<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ArNetworking: ArMapChanger Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ArNetworking
   &#160;<span id="projectnumber">dev20180125</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classArMapChanger.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classArMapChanger-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ArMapChanger Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Utility class used to apply incremental changes to an <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map.  
 <a href="classArMapChanger.html#details">More...</a></p>

<p><code>#include &lt;ArMapChanger.h&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structArMapChanger_1_1ClientChangeInfo.html">ClientChangeInfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accumulates the packet list that describes map changes received from a specified client.  <a href="structArMapChanger_1_1ClientChangeInfo.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a852654bd4cf1c91a28ca21a538c42faf"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42faf">MapChangeReplyType</a> { <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafabef9c86892f69ab8092734f5aba909ad">CHANGE_FAILED</a> = 0, 
<a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafa9cea6a58aa34cba65bcdd300aee2f37c">CHANGE_SUCCESS</a> = 10
 }<tr class="memdesc:a852654bd4cf1c91a28ca21a538c42faf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reply status for a map change request.  <a href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42faf">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a852654bd4cf1c91a28ca21a538c42faf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ae94a0812800303aa9e0bac2d4c455c43"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ae94a0812800303aa9e0bac2d4c455c43">addChangeCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt; *functor)</td></tr>
<tr class="memdesc:ae94a0812800303aa9e0bac2d4c455c43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback to be invoked after the map has been changed on the server.  <a href="#ae94a0812800303aa9e0bac2d4c455c43">More...</a><br /></td></tr>
<tr class="separator:ae94a0812800303aa9e0bac2d4c455c43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42cfd2bf214b1674ae25be4d0a6ee9ff"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a42cfd2bf214b1674ae25be4d0a6ee9ff">addPostWriteFileCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a> position=<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a>)</td></tr>
<tr class="memdesc:a42cfd2bf214b1674ae25be4d0a6ee9ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback to be invoked after the map file has been written.  <a href="#a42cfd2bf214b1674ae25be4d0a6ee9ff">More...</a><br /></td></tr>
<tr class="separator:a42cfd2bf214b1674ae25be4d0a6ee9ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfb73ff889d58a5fc4675881211c5220"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#abfb73ff889d58a5fc4675881211c5220">addPreWriteFileCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a> position=<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a>)</td></tr>
<tr class="memdesc:abfb73ff889d58a5fc4675881211c5220"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback to be invoked before the map file is written.  <a href="#abfb73ff889d58a5fc4675881211c5220">More...</a><br /></td></tr>
<tr class="separator:abfb73ff889d58a5fc4675881211c5220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa74574962d3b9d881769a717f267bda"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aaa74574962d3b9d881769a717f267bda">addRobotChangeReplyCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *functor)</td></tr>
<tr class="memdesc:aaa74574962d3b9d881769a717f267bda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a callback to be invoked after the remote reply has been received.  <a href="#aaa74574962d3b9d881769a717f267bda">More...</a><br /></td></tr>
<tr class="separator:aaa74574962d3b9d881769a717f267bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a143a8d888984d5691536e809f2c08840"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a143a8d888984d5691536e809f2c08840"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given map changes received from the client to the associated <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map.  <a href="#a143a8d888984d5691536e809f2c08840">More...</a><br /></td></tr>
<tr class="separator:a143a8d888984d5691536e809f2c08840"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c4275b2fe1eb11f0937a805b21e8eb1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger</a> (<a class="el" href="classArServerBase.html">ArServerBase</a> *server, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *map)</td></tr>
<tr class="memdesc:a3c4275b2fe1eb11f0937a805b21e8eb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a server map changer.  <a href="#a3c4275b2fe1eb11f0937a805b21e8eb1">More...</a><br /></td></tr>
<tr class="separator:a3c4275b2fe1eb11f0937a805b21e8eb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f5aa19aee09e5745e786c6d76ba5836"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a9f5aa19aee09e5745e786c6d76ba5836">ArMapChanger</a> (<a class="el" href="classArClientSwitchManager.html">ArClientSwitchManager</a> *clientSwitch, <a class="el" href="classArServerBase.html">ArServerBase</a> *server, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *map)</td></tr>
<tr class="memdesc:a9f5aa19aee09e5745e786c6d76ba5836"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a server map changer that can also originate changes (to the EM).  <a href="#a9f5aa19aee09e5745e786c6d76ba5836">More...</a><br /></td></tr>
<tr class="separator:a9f5aa19aee09e5745e786c6d76ba5836"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff206ab7c8c77f5c3da8abaf77f515ed"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger</a> (<a class="el" href="classArClientBase.html">ArClientBase</a> *<a class="el" href="configClientToServer_8cpp.html#afe594bfb305907ae82f259409cc214cb">client</a>, const std::list&lt; std::string &gt; &amp;infoNames)</td></tr>
<tr class="memdesc:aff206ab7c8c77f5c3da8abaf77f515ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a client map changer.  <a href="#aff206ab7c8c77f5c3da8abaf77f515ed">More...</a><br /></td></tr>
<tr class="separator:aff206ab7c8c77f5c3da8abaf77f515ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fb05411204d0fbff65b031094fef3ae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a1fb05411204d0fbff65b031094fef3ae">ArMapChanger</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *map)</td></tr>
<tr class="memdesc:a1fb05411204d0fbff65b031094fef3ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a stand-alone map changer that will apply changes to the given map.  <a href="#a1fb05411204d0fbff65b031094fef3ae">More...</a><br /></td></tr>
<tr class="separator:a1fb05411204d0fbff65b031094fef3ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe1f97e020306006e66e5ded63ab960f"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#abe1f97e020306006e66e5ded63ab960f">remChangeCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt; *functor)</td></tr>
<tr class="memdesc:abe1f97e020306006e66e5ded63ab960f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback from the map change list.  <a href="#abe1f97e020306006e66e5ded63ab960f">More...</a><br /></td></tr>
<tr class="separator:abe1f97e020306006e66e5ded63ab960f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e328dbf0e447dad115b4acaa9a920cb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a5e328dbf0e447dad115b4acaa9a920cb">remPostWriteFileCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a5e328dbf0e447dad115b4acaa9a920cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback from the post-write file list.  <a href="#a5e328dbf0e447dad115b4acaa9a920cb">More...</a><br /></td></tr>
<tr class="separator:a5e328dbf0e447dad115b4acaa9a920cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2003fdf3b981d8005ae409e7f6e9dfec"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a2003fdf3b981d8005ae409e7f6e9dfec">remPreWriteFileCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor)</td></tr>
<tr class="memdesc:a2003fdf3b981d8005ae409e7f6e9dfec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback from the pre-write file list.  <a href="#a2003fdf3b981d8005ae409e7f6e9dfec">More...</a><br /></td></tr>
<tr class="separator:a2003fdf3b981d8005ae409e7f6e9dfec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef0e45ea59fe1fd153109a025dc42a9d"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aef0e45ea59fe1fd153109a025dc42a9d">remRobotChangeReplyCB</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *functor)</td></tr>
<tr class="memdesc:aef0e45ea59fe1fd153109a025dc42a9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a callback from the remote reply list.  <a href="#aef0e45ea59fe1fd153109a025dc42a9d">More...</a><br /></td></tr>
<tr class="separator:aef0e45ea59fe1fd153109a025dc42a9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad377655ee135174213579f5b88941b4"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:aad377655ee135174213579f5b88941b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends the given map changes from the client to the server.  <a href="#aad377655ee135174213579f5b88941b4">More...</a><br /></td></tr>
<tr class="separator:aad377655ee135174213579f5b88941b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54e7293beac64133068f0b44cadc6b15"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList</a> (const std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;packetList)</td></tr>
<tr class="memdesc:a54e7293beac64133068f0b44cadc6b15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transmits the given map change packet list from the client to the server.  <a href="#a54e7293beac64133068f0b44cadc6b15">More...</a><br /></td></tr>
<tr class="separator:a54e7293beac64133068f0b44cadc6b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12e8eba81780f3726fd2246b876d60e1"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a12e8eba81780f3726fd2246b876d60e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends the given map changes from the robot to the central server.  <a href="#a12e8eba81780f3726fd2246b876d60e1">More...</a><br /></td></tr>
<tr class="separator:a12e8eba81780f3726fd2246b876d60e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d9bb030031d7df3f2e72d3106d60653"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a7d9bb030031d7df3f2e72d3106d60653">sendRobotPacketList</a> (const std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;packetList)</td></tr>
<tr class="memdesc:a7d9bb030031d7df3f2e72d3106d60653"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transmit the given map change packet list from the robot to the central server.  <a href="#a7d9bb030031d7df3f2e72d3106d60653">More...</a><br /></td></tr>
<tr class="separator:a7d9bb030031d7df3f2e72d3106d60653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0efc22bd3a1e7a6efc39743eccb6f64"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger</a> ()</td></tr>
<tr class="memdesc:af0efc22bd3a1e7a6efc39743eccb6f64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#af0efc22bd3a1e7a6efc39743eccb6f64">More...</a><br /></td></tr>
<tr class="separator:af0efc22bd3a1e7a6efc39743eccb6f64"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a409e5a475b6fca4b5a88c0ac8a0719c6"><td class="memItemLeft" align="right" valign="top">static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a></td></tr>
<tr class="memdesc:a409e5a475b6fca4b5a88c0ac8a0719c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of a network packet that is broadcast when the map is being changed.  <a href="#a409e5a475b6fca4b5a88c0ac8a0719c6">More...</a><br /></td></tr>
<tr class="separator:a409e5a475b6fca4b5a88c0ac8a0719c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5f4ec636f5e83c3839e29ba33c72ffc"><td class="memItemLeft" align="right" valign="top">static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a></td></tr>
<tr class="memdesc:ad5f4ec636f5e83c3839e29ba33c72ffc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of the network packet that contains the incremental map changes.  <a href="#ad5f4ec636f5e83c3839e29ba33c72ffc">More...</a><br /></td></tr>
<tr class="separator:ad5f4ec636f5e83c3839e29ba33c72ffc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9850b0ed88ce378295870c012f0eb6e4"><td class="memItemLeft" align="right" valign="top">static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a9850b0ed88ce378295870c012f0eb6e4">PROCESS_ROBOT_CHANGES_PACKET_NAME</a></td></tr>
<tr class="memdesc:a9850b0ed88ce378295870c012f0eb6e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of the network packet that contains incremental map changes originated by the robot.  <a href="#a9850b0ed88ce378295870c012f0eb6e4">More...</a><br /></td></tr>
<tr class="separator:a9850b0ed88ce378295870c012f0eb6e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af224c506b1308943284d7e7da5efc86e"><td class="memItemLeft" align="right" valign="top">static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#af224c506b1308943284d7e7da5efc86e">ROBOT_CHANGES_COMPLETE_PACKET_NAME</a></td></tr>
<tr class="memdesc:af224c506b1308943284d7e7da5efc86e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of the network packet that is broadcast when map changes originated by the robot are complete.  <a href="#af224c506b1308943284d7e7da5efc86e">More...</a><br /></td></tr>
<tr class="separator:af224c506b1308943284d7e7da5efc86e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr class="memitem:ac56296aec0c3ed853fd3eb59962bfdf1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1a9888e3d405aaf2b49425378cbb97552c">CHANGE_DATA_TYPE_COUNT</a> = LAST_CHANGE_DATA_TYPE + 1, 
<a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1abbadb91de7aa82fbca854bd6091ba5ec">CHANGE_COMMAND_COUNT</a> = LAST_CHANGE_COMMAND + 1, 
<a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1afc12e915661b82fdf0641adb10d1d66d">MAX_POINTS_IN_PACKET</a> = 1000, 
<a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1a0e319207548f675f31bee1dc7255c5a2">MAX_LINES_IN_PACKET</a> = 500
 }<tr class="memdesc:ac56296aec0c3ed853fd3eb59962bfdf1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Miscellaneous constants.  <a href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ac56296aec0c3ed853fd3eb59962bfdf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1549ef7090ace709ceed5f4ca68e376"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">MapChangeCommand</a> { <br />
&#160;&#160;<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4960b8a8b46e1fab434a2077f3049d60">START_CHANGES</a> = 0, 
<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a> = 1, 
<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a3107cef001e3a43aeb660535782a5498">FINISH_CHANGES</a> = 2, 
<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a2edc48967c8486823d9a29301d981fab">CANCEL_CHANGES</a> = 3, 
<br />
&#160;&#160;<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376ad12cedf203986d18aa8a480afad867a0">LAST_CHANGE_COMMAND</a> = CANCEL_CHANGES
<br />
 }<tr class="memdesc:ab1549ef7090ace709ceed5f4ca68e376"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates the current stage of the map change network packets.  <a href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ab1549ef7090ace709ceed5f4ca68e376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3195fa44ecad890c3db1c4886996aba"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> { <br />
&#160;&#160;<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa456e025f2b60c4dfe936f2ae19a58588">NO_CHANGE</a> = 0, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaef383b85b35c07dbec6355b066dee955">SUMMARY_DATA</a> = 1, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77">INFO_DATA</a> = 2, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa042468b4c8964c702a38e27e58e74ee9">SUPPLEMENT_DATA</a> = 3, 
<br />
&#160;&#160;<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa56c4d61c5a32300a4a912288b684c920">OBJECTS_DATA</a> = 4, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa08d04cdc16d4991988ea51ba86de5cdc">POINTS_DATA</a> = 5, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa52a65e1244a57df9dd2626da27c693e6">LINES_DATA</a> = 6, 
<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaab87abd5e0e5e2c13f85e841f652a438">LAST_CHANGE_DATA_TYPE</a> = LINES_DATA
<br />
 }<tr class="memdesc:ad3195fa44ecad890c3db1c4886996aba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of data contained in the map change network packet.  <a href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ad3195fa44ecad890c3db1c4886996aba"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a6775e154dbd08e9d3ad09b36bfdf9fa2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a6775e154dbd08e9d3ad09b36bfdf9fa2">addFileLineSetPackets</a> (<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> dataType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, const char *extra, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineSet.html">ArMapFileLineSet</a> *fileLineSet, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut)</td></tr>
<tr class="memdesc:a6775e154dbd08e9d3ad09b36bfdf9fa2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates network packets for the specified map change data and adds them to the given list.  <a href="#a6775e154dbd08e9d3ad09b36bfdf9fa2">More...</a><br /></td></tr>
<tr class="separator:a6775e154dbd08e9d3ad09b36bfdf9fa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af277fd6b736ef840df1e2158ff83c642"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#af277fd6b736ef840df1e2158ff83c642">addFileLineToPacketList</a> (<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> dataType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, const <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html">ArMapFileLine</a> &amp;fileLine, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut)</td></tr>
<tr class="memdesc:af277fd6b736ef840df1e2158ff83c642"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates network packets for the specified file line and adds them to the given list.  <a href="#af277fd6b736ef840df1e2158ff83c642">More...</a><br /></td></tr>
<tr class="separator:af277fd6b736ef840df1e2158ff83c642"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f36a634b135aeca676b3ace46e62fd6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a8f36a634b135aeca676b3ace46e62fd6">addGroupToPacketList</a> (<a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> dataType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html">ArMapFileLineGroup</a> &amp;group, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut)</td></tr>
<tr class="memdesc:a8f36a634b135aeca676b3ace46e62fd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates network packets for the specified file line group and adds them to the given list.  <a href="#a8f36a634b135aeca676b3ace46e62fd6">More...</a><br /></td></tr>
<tr class="separator:a8f36a634b135aeca676b3ace46e62fd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a49911efe804ecaa23e35e4cf171d9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket</a> (<a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">MapChangeCommand</a> command, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> dataType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="memdesc:a7a49911efe804ecaa23e35e4cf171d9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inserts header information into the given network packet.  <a href="#a7a49911efe804ecaa23e35e4cf171d9d">More...</a><br /></td></tr>
<tr class="separator:a7a49911efe804ecaa23e35e4cf171d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41316c185f5f35e09d50159885df68b2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a41316c185f5f35e09d50159885df68b2">addLinesPackets</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, std::vector&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLineSegment.html">ArLineSegment</a> &gt; *lineSegmentList, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut)</td></tr>
<tr class="memdesc:a41316c185f5f35e09d50159885df68b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates network packets for the given map data lines and adds them to the given list.  <a href="#a41316c185f5f35e09d50159885df68b2">More...</a><br /></td></tr>
<tr class="separator:a41316c185f5f35e09d50159885df68b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a217eef4ae35a210e15bafeecc84b1851"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a217eef4ae35a210e15bafeecc84b1851">addPointsPackets</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, std::vector&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArPose.html">ArPose</a> &gt; *pointList, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut)</td></tr>
<tr class="memdesc:a217eef4ae35a210e15bafeecc84b1851"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates network packets for the given map data points and adds them to the given list.  <a href="#a217eef4ae35a210e15bafeecc84b1851">More...</a><br /></td></tr>
<tr class="separator:a217eef4ae35a210e15bafeecc84b1851"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb19740b81a0c27a0a8c5b8ead3d8f0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#adb19740b81a0c27a0a8c5b8ead3d8f0e">addToCallbackList</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a> position, std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt; *cbList)</td></tr>
<tr class="memdesc:adb19740b81a0c27a0a8c5b8ead3d8f0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds the given functor to the given callback list.  <a href="#adb19740b81a0c27a0a8c5b8ead3d8f0e">More...</a><br /></td></tr>
<tr class="separator:adb19740b81a0c27a0a8c5b8ead3d8f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1674eb6377d518e60e239c830d62936"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ad1674eb6377d518e60e239c830d62936">applyInfoChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:ad1674eb6377d518e60e239c830d62936"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given map changes to the info data in the map.  <a href="#ad1674eb6377d518e60e239c830d62936">More...</a><br /></td></tr>
<tr class="separator:ad1674eb6377d518e60e239c830d62936"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ac4dc25c85ec5959766451cfd76802e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a9ac4dc25c85ec5959766451cfd76802e">applyObjectChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a9ac4dc25c85ec5959766451cfd76802e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given map changes to the object data in the map.  <a href="#a9ac4dc25c85ec5959766451cfd76802e">More...</a><br /></td></tr>
<tr class="separator:a9ac4dc25c85ec5959766451cfd76802e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714618eeef1d845f0d2a27ae29a1a9ee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a714618eeef1d845f0d2a27ae29a1a9ee">applyScanChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a714618eeef1d845f0d2a27ae29a1a9ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies all scan data changes that are contained in the given change details.  <a href="#a714618eeef1d845f0d2a27ae29a1a9ee">More...</a><br /></td></tr>
<tr class="separator:a714618eeef1d845f0d2a27ae29a1a9ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31ada1546aeb41883d8851f28e42f680"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a31ada1546aeb41883d8851f28e42f680">applyScanChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails, const char *scanType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFileParser.html">ArFileParser</a> &amp;parser)</td></tr>
<tr class="memdesc:a31ada1546aeb41883d8851f28e42f680"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies scan data changes for the specified scan type.  <a href="#a31ada1546aeb41883d8851f28e42f680">More...</a><br /></td></tr>
<tr class="separator:a31ada1546aeb41883d8851f28e42f680"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62bd1ee27634796829a3b287f11ec504"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a62bd1ee27634796829a3b287f11ec504">applySupplementChanges</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a62bd1ee27634796829a3b287f11ec504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given map changes to the supplemental data in the map.  <a href="#a62bd1ee27634796829a3b287f11ec504">More...</a><br /></td></tr>
<tr class="separator:a62bd1ee27634796829a3b287f11ec504"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30fa322777e2c916275cf93249196dc8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetListOut, bool isRelay=false)</td></tr>
<tr class="memdesc:a30fa322777e2c916275cf93249196dc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a list of network packets for the given map change details.  <a href="#a30fa322777e2c916275cf93249196dc8">More...</a><br /></td></tr>
<tr class="separator:a30fa322777e2c916275cf93249196dc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3df6edf63396448d6e269e2a0c2a52b4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails</a> (std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;packetList, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetailsOut)</td></tr>
<tr class="memdesc:a3df6edf63396448d6e269e2a0c2a52b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unpacks the given network packet list and populates the given map change details.  <a href="#a3df6edf63396448d6e269e2a0c2a52b4">More...</a><br /></td></tr>
<tr class="separator:a3df6edf63396448d6e269e2a0c2a52b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a638fba4b6bbe39292c5134f376e912ce"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket</a> (<a class="el" href="classArServerClient.html">ArServerClient</a> *<a class="el" href="configClientToServer_8cpp.html#afe594bfb305907ae82f259409cc214cb">client</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="memdesc:a638fba4b6bbe39292c5134f376e912ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Server handler for packets that contain map change details.  <a href="#a638fba4b6bbe39292c5134f376e912ce">More...</a><br /></td></tr>
<tr class="separator:a638fba4b6bbe39292c5134f376e912ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3df8e38ec607d3ed344965133ff7cd35"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a3df8e38ec607d3ed344965133ff7cd35">handleChangeReplyPacket</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="memdesc:a3df8e38ec607d3ed344965133ff7cd35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the results of applying the map changes on the server.  <a href="#a3df8e38ec607d3ed344965133ff7cd35">More...</a><br /></td></tr>
<tr class="separator:a3df8e38ec607d3ed344965133ff7cd35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36326d95ab1076cf32b50fdcbde37739"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a36326d95ab1076cf32b50fdcbde37739">handleChangesInProgressPacket</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="memdesc:a36326d95ab1076cf32b50fdcbde37739"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the map-changes-in-progress broadcast packet.  <a href="#a36326d95ab1076cf32b50fdcbde37739">More...</a><br /></td></tr>
<tr class="separator:a36326d95ab1076cf32b50fdcbde37739"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87178bad2e79779cd29dc544f03676a0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a87178bad2e79779cd29dc544f03676a0">handleClientShutdown</a> ()</td></tr>
<tr class="memdesc:a87178bad2e79779cd29dc544f03676a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for when the robot disconnects or is shutdown.  <a href="#a87178bad2e79779cd29dc544f03676a0">More...</a><br /></td></tr>
<tr class="separator:a87178bad2e79779cd29dc544f03676a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84b8b1b160752bfed246e08a9b4680ac"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a84b8b1b160752bfed246e08a9b4680ac">handleIdleProcessingPacket</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="memdesc:a84b8b1b160752bfed246e08a9b4680ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the server's idle-processing-pending broadcast packet.  <a href="#a84b8b1b160752bfed246e08a9b4680ac">More...</a><br /></td></tr>
<tr class="separator:a84b8b1b160752bfed246e08a9b4680ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbe010f1f4742ba3e45ac5449163a9e0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#abbe010f1f4742ba3e45ac5449163a9e0">handleRobotChangeReplyPacket</a> (<a class="el" href="classArServerClient.html">ArServerClient</a> *<a class="el" href="configClientToServer_8cpp.html#afe594bfb305907ae82f259409cc214cb">client</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet)</td></tr>
<tr class="separator:abbe010f1f4742ba3e45ac5449163a9e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3afdd5ed6a87efaa81f2e7992c5fe6d0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a3afdd5ed6a87efaa81f2e7992c5fe6d0">isIdleProcessingPending</a> ()</td></tr>
<tr class="memdesc:a3afdd5ed6a87efaa81f2e7992c5fe6d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines whether idle processing is pending on the server.  <a href="#a3afdd5ed6a87efaa81f2e7992c5fe6d0">More...</a><br /></td></tr>
<tr class="separator:a3afdd5ed6a87efaa81f2e7992c5fe6d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83b329b111b330714e1d73142853d46c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a83b329b111b330714e1d73142853d46c">isMatchingObjects</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html">ArMapObject</a> *obj1, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html">ArMapObject</a> *obj2)</td></tr>
<tr class="memdesc:a83b329b111b330714e1d73142853d46c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines whether the two given map objects are the same object.  <a href="#a83b329b111b330714e1d73142853d46c">More...</a><br /></td></tr>
<tr class="separator:a83b329b111b330714e1d73142853d46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0662075ee107a7e1cc3da65357fc366e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a0662075ee107a7e1cc3da65357fc366e">remFromCallbackList</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *functor, std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt; *cbList)</td></tr>
<tr class="memdesc:a0662075ee107a7e1cc3da65357fc366e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the given functor from the given callback list.  <a href="#a0662075ee107a7e1cc3da65357fc366e">More...</a><br /></td></tr>
<tr class="separator:a0662075ee107a7e1cc3da65357fc366e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2fc540cc5050447bd640aa4b2034ba9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aa2fc540cc5050447bd640aa4b2034ba9">resetPacketList</a> (std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *packetList)</td></tr>
<tr class="memdesc:aa2fc540cc5050447bd640aa4b2034ba9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets all of the network packets in the given list so that they can be read again.  <a href="#aa2fc540cc5050447bd640aa4b2034ba9">More...</a><br /></td></tr>
<tr class="separator:aa2fc540cc5050447bd640aa4b2034ba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d9dabaa125125f55f25b20b6e1cad06"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a9d9dabaa125125f55f25b20b6e1cad06">unpackFileLineSet</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> dataType, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, int *numGroups, int *numChildren, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a9d9dabaa125125f55f25b20b6e1cad06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unpacks the specified file line set from the given network packet.  <a href="#a9d9dabaa125125f55f25b20b6e1cad06">More...</a><br /></td></tr>
<tr class="separator:a9d9dabaa125125f55f25b20b6e1cad06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a020bc0e2af2ce73e10c4fed8901a027a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a020bc0e2af2ce73e10c4fed8901a027a">unpackHeader</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">MapChangeCommand</a> *commandOut, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> *origMapIdOut, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> *newMapIdOut=NULL, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> *dataTypeOut=NULL, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> *changeTypeOut=NULL, std::string *scanTypeOut=NULL)</td></tr>
<tr class="memdesc:a020bc0e2af2ce73e10c4fed8901a027a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unpacks the header data from the given network packet.  <a href="#a020bc0e2af2ce73e10c4fed8901a027a">More...</a><br /></td></tr>
<tr class="separator:a020bc0e2af2ce73e10c4fed8901a027a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe3dbf5e11f9a121d8f17e218cc8aac8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#afe3dbf5e11f9a121d8f17e218cc8aac8">unpackLines</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, int *numLines, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:afe3dbf5e11f9a121d8f17e218cc8aac8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unpacks the map data lines for the specified scan from the given network packet.  <a href="#afe3dbf5e11f9a121d8f17e218cc8aac8">More...</a><br /></td></tr>
<tr class="separator:afe3dbf5e11f9a121d8f17e218cc8aac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a9891d76099198ac2e49d4867985529"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a6a9891d76099198ac2e49d4867985529">unpackPoints</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> changeType, const char *scanType, int *numPoints, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *changeDetails)</td></tr>
<tr class="memdesc:a6a9891d76099198ac2e49d4867985529"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unpacks the map data points for the specified scan from the given network packet.  <a href="#a6a9891d76099198ac2e49d4867985529">More...</a><br /></td></tr>
<tr class="separator:a6a9891d76099198ac2e49d4867985529"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaacff19ee2b01c2d32bc60a8e26df6c6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aaacff19ee2b01c2d32bc60a8e26df6c6">waitForCentralServerReply</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a> &amp;started)</td></tr>
<tr class="separator:aaacff19ee2b01c2d32bc60a8e26df6c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e21533dabbf367f94c2ac6c73b7289e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a> &amp;started)</td></tr>
<tr class="memdesc:a7e21533dabbf367f94c2ac6c73b7289e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Waits for a reply from the server.  <a href="#a7e21533dabbf367f94c2ac6c73b7289e">More...</a><br /></td></tr>
<tr class="separator:a7e21533dabbf367f94c2ac6c73b7289e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:ae7a8ab5f4f6b981d862e18cb472b20a3"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt; * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ae7a8ab5f4f6b981d862e18cb472b20a3">myChangeCBList</a></td></tr>
<tr class="memdesc:ae7a8ab5f4f6b981d862e18cb472b20a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of server client callbacks to be invoked after the map has been changed.  <a href="#ae7a8ab5f4f6b981d862e18cb472b20a3">More...</a><br /></td></tr>
<tr class="separator:ae7a8ab5f4f6b981d862e18cb472b20a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a630033dac696c94671b4155a7ba649b5"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a630033dac696c94671b4155a7ba649b5">myChangeDetails</a></td></tr>
<tr class="memdesc:a630033dac696c94671b4155a7ba649b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change details to apply to the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map.  <a href="#a630033dac696c94671b4155a7ba649b5">More...</a><br /></td></tr>
<tr class="separator:a630033dac696c94671b4155a7ba649b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff3ea22ecd353f08d45a7c02f1d8f561"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classArClientBase.html">ArClientBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a></td></tr>
<tr class="memdesc:aff3ea22ecd353f08d45a7c02f1d8f561"><td class="mdescLeft">&#160;</td><td class="mdescRight">Associated client base; non-NULL only when changer instantiated on the client.  <a href="#aff3ea22ecd353f08d45a7c02f1d8f561">More...</a><br /></td></tr>
<tr class="separator:aff3ea22ecd353f08d45a7c02f1d8f561"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2eeb3f98563ebf24307d2361b789884"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structArMapChanger_1_1ClientChangeInfo.html">ClientChangeInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#ad2eeb3f98563ebf24307d2361b789884">myClientInfo</a></td></tr>
<tr class="memdesc:ad2eeb3f98563ebf24307d2361b789884"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information regarding the server client that is currently sending map changes.  <a href="#ad2eeb3f98563ebf24307d2361b789884">More...</a><br /></td></tr>
<tr class="separator:ad2eeb3f98563ebf24307d2361b789884"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f7141498552450b70438d25d7904c26"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a2f7141498552450b70438d25d7904c26">myClientInfoMutex</a></td></tr>
<tr class="memdesc:a2f7141498552450b70438d25d7904c26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mutex that protects access to the myClientInfo member.  <a href="#a2f7141498552450b70438d25d7904c26">More...</a><br /></td></tr>
<tr class="separator:a2f7141498552450b70438d25d7904c26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0190ce451a050fbda153345808bb4e2a"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a></td></tr>
<tr class="memdesc:a0190ce451a050fbda153345808bb4e2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mutex that protects access to the myClient member.  <a href="#a0190ce451a050fbda153345808bb4e2a">More...</a><br /></td></tr>
<tr class="separator:a0190ce451a050fbda153345808bb4e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d4196edba45d1930c3f50e465d13356"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctorC.html">ArFunctorC</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a6d4196edba45d1930c3f50e465d13356">myClientShutdownCB</a></td></tr>
<tr class="memdesc:a6d4196edba45d1930c3f50e465d13356"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handler invoked when the client shuts down.  <a href="#a6d4196edba45d1930c3f50e465d13356">More...</a><br /></td></tr>
<tr class="separator:a6d4196edba45d1930c3f50e465d13356"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f57c7f186936273ee6af5fac36c8ba4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classArClientSwitchManager.html">ArClientSwitchManager</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a3f57c7f186936273ee6af5fac36c8ba4">myClientSwitch</a></td></tr>
<tr class="memdesc:a3f57c7f186936273ee6af5fac36c8ba4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Associated client switch manager; non-NULL when changer instantiated on robot with EM.  <a href="#a3f57c7f186936273ee6af5fac36c8ba4">More...</a><br /></td></tr>
<tr class="separator:a3f57c7f186936273ee6af5fac36c8ba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6119abb76531a9b4716bbc4725ae8d7"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2C.html">ArFunctor2C</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aa6119abb76531a9b4716bbc4725ae8d7">myHandleChangePacketCB</a></td></tr>
<tr class="memdesc:aa6119abb76531a9b4716bbc4725ae8d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Server handler for the network packets that describe map changes.  <a href="#aa6119abb76531a9b4716bbc4725ae8d7">More...</a><br /></td></tr>
<tr class="separator:aa6119abb76531a9b4716bbc4725ae8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12d8861d927f8507e6872b004b40b6a2"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a12d8861d927f8507e6872b004b40b6a2">myHandleChangesInProgressPacketCB</a></td></tr>
<tr class="memdesc:a12d8861d927f8507e6872b004b40b6a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the map-changes-in-progress packet.  <a href="#a12d8861d927f8507e6872b004b40b6a2">More...</a><br /></td></tr>
<tr class="separator:a12d8861d927f8507e6872b004b40b6a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d016fc5664d8994c966d3ed7ee76721"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a4d016fc5664d8994c966d3ed7ee76721">myHandleIdleProcessingPacketCB</a></td></tr>
<tr class="memdesc:a4d016fc5664d8994c966d3ed7ee76721"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the idle-processing-in-progress packet.  <a href="#a4d016fc5664d8994c966d3ed7ee76721">More...</a><br /></td></tr>
<tr class="separator:a4d016fc5664d8994c966d3ed7ee76721"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38e1625b116a1baa4ae4ccd240b44de5"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a38e1625b116a1baa4ae4ccd240b44de5">myHandleReplyPacketCB</a></td></tr>
<tr class="memdesc:a38e1625b116a1baa4ae4ccd240b44de5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Client handler for the reply packet.  <a href="#a38e1625b116a1baa4ae4ccd240b44de5">More...</a><br /></td></tr>
<tr class="separator:a38e1625b116a1baa4ae4ccd240b44de5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a509cad7e645463e2a7e6fb332812f770"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2C.html">ArFunctor2C</a>&lt; <a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a509cad7e645463e2a7e6fb332812f770">myHandleRobotReplyPacketCB</a></td></tr>
<tr class="separator:a509cad7e645463e2a7e6fb332812f770"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a946fc5ad4814f295b6e28e720d75ab7d"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a946fc5ad4814f295b6e28e720d75ab7d">myIdleProcessingMutex</a></td></tr>
<tr class="memdesc:a946fc5ad4814f295b6e28e720d75ab7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mutex that protects access to the myIsIdleProcessingPending member.  <a href="#a946fc5ad4814f295b6e28e720d75ab7d">More...</a><br /></td></tr>
<tr class="separator:a946fc5ad4814f295b6e28e720d75ab7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac68b8ebcd9edd81d5f412ae1ff3305d"><td class="memItemLeft" align="right" valign="top">std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a></td></tr>
<tr class="memdesc:aac68b8ebcd9edd81d5f412ae1ff3305d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of info types in the associated <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map.  <a href="#aac68b8ebcd9edd81d5f412ae1ff3305d">More...</a><br /></td></tr>
<tr class="separator:aac68b8ebcd9edd81d5f412ae1ff3305d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76e5cef58ddf23b17a4a8e9e4b45c837"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a></td></tr>
<tr class="memdesc:a76e5cef58ddf23b17a4a8e9e4b45c837"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mutex that protects access to the interleave data.  <a href="#a76e5cef58ddf23b17a4a8e9e4b45c837">More...</a><br /></td></tr>
<tr class="separator:a76e5cef58ddf23b17a4a8e9e4b45c837"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c7e7aad748cf4c06e0bfeb3844739da"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a5c7e7aad748cf4c06e0bfeb3844739da">myIsIdleProcessingPending</a></td></tr>
<tr class="memdesc:a5c7e7aad748cf4c06e0bfeb3844739da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether the server has data to process once it becomes idle.  <a href="#a5c7e7aad748cf4c06e0bfeb3844739da">More...</a><br /></td></tr>
<tr class="separator:a5c7e7aad748cf4c06e0bfeb3844739da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25e9f849bb6647cc287e2081e4f886a3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a25e9f849bb6647cc287e2081e4f886a3">myIsServerClientInit</a></td></tr>
<tr class="memdesc:a25e9f849bb6647cc287e2081e4f886a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether the client switch manager's serverClient has been initialized with a handler (for EM)  <a href="#a25e9f849bb6647cc287e2081e4f886a3">More...</a><br /></td></tr>
<tr class="separator:a25e9f849bb6647cc287e2081e4f886a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba1d157146488c4cd8b71f19f3252503"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a></td></tr>
<tr class="memdesc:aba1d157146488c4cd8b71f19f3252503"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether the client is waiting for a reply from the server.  <a href="#aba1d157146488c4cd8b71f19f3252503">More...</a><br /></td></tr>
<tr class="separator:aba1d157146488c4cd8b71f19f3252503"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a829644089e79fe7c34c722506e5d6e2d"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a></td></tr>
<tr class="memdesc:a829644089e79fe7c34c722506e5d6e2d"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map currently in use.  <a href="#a829644089e79fe7c34c722506e5d6e2d">More...</a><br /></td></tr>
<tr class="separator:a829644089e79fe7c34c722506e5d6e2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61daf7e22d46ab1ef050fb1758eefa32"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a61daf7e22d46ab1ef050fb1758eefa32">myPostWriteCBList</a></td></tr>
<tr class="memdesc:a61daf7e22d46ab1ef050fb1758eefa32"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of callbacks to be invoked after the changed map file is written.  <a href="#a61daf7e22d46ab1ef050fb1758eefa32">More...</a><br /></td></tr>
<tr class="separator:a61daf7e22d46ab1ef050fb1758eefa32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9298c174615a941c245acd39e2c05c66"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a9298c174615a941c245acd39e2c05c66">myPreWriteCBList</a></td></tr>
<tr class="memdesc:a9298c174615a941c245acd39e2c05c66"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of callbacks to be invoked before the changed map file is written.  <a href="#a9298c174615a941c245acd39e2c05c66">More...</a><br /></td></tr>
<tr class="separator:a9298c174615a941c245acd39e2c05c66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaea33e6e54a2efac854ccd37d637cab2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a></td></tr>
<tr class="memdesc:aaea33e6e54a2efac854ccd37d637cab2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether the client is ready to send another packet.  <a href="#aaea33e6e54a2efac854ccd37d637cab2">More...</a><br /></td></tr>
<tr class="separator:aaea33e6e54a2efac854ccd37d637cab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87c88ce3a949cc2b97007b603d8bc6bb"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a87c88ce3a949cc2b97007b603d8bc6bb">myRobotChangeReplyCBList</a></td></tr>
<tr class="memdesc:a87c88ce3a949cc2b97007b603d8bc6bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of server client callbacks to be invoked after the map has been changed.  <a href="#a87c88ce3a949cc2b97007b603d8bc6bb">More...</a><br /></td></tr>
<tr class="separator:a87c88ce3a949cc2b97007b603d8bc6bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fb3dd5fbcc1dbc18d7d8e3244687f86"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classArServerBase.html">ArServerBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#a4fb3dd5fbcc1dbc18d7d8e3244687f86">myServer</a></td></tr>
<tr class="memdesc:a4fb3dd5fbcc1dbc18d7d8e3244687f86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Associated server base; non-NULL only when changer instantiated on the server.  <a href="#a4fb3dd5fbcc1dbc18d7d8e3244687f86">More...</a><br /></td></tr>
<tr class="separator:a4fb3dd5fbcc1dbc18d7d8e3244687f86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba09f10fe736f9cb2b9c86b9e8193848"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a></td></tr>
<tr class="memdesc:aba09f10fe736f9cb2b9c86b9e8193848"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy of the current <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map, used to make sure the changes can be successfully made.  <a href="#aba09f10fe736f9cb2b9c86b9e8193848">More...</a><br /></td></tr>
<tr class="separator:aba09f10fe736f9cb2b9c86b9e8193848"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Utility class used to apply incremental changes to an <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map. </p>
<p><a class="el" href="classArMapChanger.html" title="Utility class used to apply incremental changes to an Aria map. ">ArMapChanger</a> is a helper class that can send and receive <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> over the network and apply them to an associated <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map. An instance of <a class="el" href="classArMapChanger.html" title="Utility class used to apply incremental changes to an Aria map. ">ArMapChanger</a> must be instantiated on both the client and the server side. (Note that there are two different versions of the constructors for this.)</p>
<p>TODO: Possibly subclass this into ArClientMapChanger and ArServerMapChanger?</p>
<dl class="section see"><dt>See also</dt><dd><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="ac56296aec0c3ed853fd3eb59962bfdf1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Miscellaneous constants. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ac56296aec0c3ed853fd3eb59962bfdf1a9888e3d405aaf2b49425378cbb97552c"></a>CHANGE_DATA_TYPE_COUNT&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac56296aec0c3ed853fd3eb59962bfdf1abbadb91de7aa82fbca854bd6091ba5ec"></a>CHANGE_COMMAND_COUNT&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac56296aec0c3ed853fd3eb59962bfdf1afc12e915661b82fdf0641adb10d1d66d"></a>MAX_POINTS_IN_PACKET&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac56296aec0c3ed853fd3eb59962bfdf1a0e319207548f675f31bee1dc7255c5a2"></a>MAX_LINES_IN_PACKET&#160;</td><td class="fielddoc">
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">ArMapChanger::MapChangeCommand</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates the current stage of the map change network packets. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376a4960b8a8b46e1fab434a2077f3049d60"></a>START_CHANGES&#160;</td><td class="fielddoc">
<p>First packet that contains changes to be applied to the map. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9"></a>CONTINUE_CHANGES&#160;</td><td class="fielddoc">
<p>Request to continue applying changes to the map. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376a3107cef001e3a43aeb660535782a5498"></a>FINISH_CHANGES&#160;</td><td class="fielddoc">
<p>Last packet that contains changes to be applied to the map. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376a2edc48967c8486823d9a29301d981fab"></a>CANCEL_CHANGES&#160;</td><td class="fielddoc">
<p>Cancel the request to change the map. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ab1549ef7090ace709ceed5f4ca68e376ad12cedf203986d18aa8a480afad867a0"></a>LAST_CHANGE_COMMAND&#160;</td><td class="fielddoc">
<p>Last value in the enumeration. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ad3195fa44ecad890c3db1c4886996aba"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">ArMapChanger::MapChangeDataType</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Type of data contained in the map change network packet. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa456e025f2b60c4dfe936f2ae19a58588"></a>NO_CHANGE&#160;</td><td class="fielddoc">
<p>No change data. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaaef383b85b35c07dbec6355b066dee955"></a>SUMMARY_DATA&#160;</td><td class="fielddoc">
<p>Summary data, e.g. min/max pos, number of points. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77"></a>INFO_DATA&#160;</td><td class="fielddoc">
<p>Any of the info data, e.g. MapInfo, RouteInfo. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa042468b4c8964c702a38e27e58e74ee9"></a>SUPPLEMENT_DATA&#160;</td><td class="fielddoc">
<p>Miscellaneous supplemental data such as origin lat/long/alt. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa56c4d61c5a32300a4a912288b684c920"></a>OBJECTS_DATA&#160;</td><td class="fielddoc">
<p>Map objects, i.e. Cairn lines. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa08d04cdc16d4991988ea51ba86de5cdc"></a>POINTS_DATA&#160;</td><td class="fielddoc">
<p>Map data points. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaa52a65e1244a57df9dd2626da27c693e6"></a>LINES_DATA&#160;</td><td class="fielddoc">
<p>Map data lines. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ad3195fa44ecad890c3db1c4886996abaaab87abd5e0e5e2c13f85e841f652a438"></a>LAST_CHANGE_DATA_TYPE&#160;</td><td class="fielddoc">
<p>Last value in the enumeration. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="a852654bd4cf1c91a28ca21a538c42faf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42faf">ArMapChanger::MapChangeReplyType</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reply status for a map change request. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a852654bd4cf1c91a28ca21a538c42fafabef9c86892f69ab8092734f5aba909ad"></a>CHANGE_FAILED&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a852654bd4cf1c91a28ca21a538c42fafa9cea6a58aa34cba65bcdd300aee2f37c"></a>CHANGE_SUCCESS&#160;</td><td class="fielddoc">
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3c4275b2fe1eb11f0937a805b21e8eb1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArMapChanger::ArMapChanger </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArServerBase.html">ArServerBase</a> *&#160;</td>
          <td class="paramname"><em>server</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *&#160;</td>
          <td class="paramname"><em>map</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a server map changer. </p>
<p>The map changer will automatically apply the received map change details to the given map.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">server</td><td>the <a class="el" href="classArServerBase.html" title="Base server for all networking services. ">ArServerBase</a> * that receives the network packets </td></tr>
    <tr><td class="paramname">map</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> * to which to apply the map changes </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="classArServerBase.html#a2df604c980c35140f69d35362a3403f2">ArServerBase::addData()</a>, <a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInfoInterface.html#ae76435246b06fe6f967f4c2d098cd959">ArMapInfoInterface::getInfoNames()</a>, <a class="el" href="classArMapChanger.html#aa6119abb76531a9b4716bbc4725ae8d7">myHandleChangePacketCB</a>, <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>, <a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a>, <a class="el" href="classArMapChanger.html#a4fb3dd5fbcc1dbc18d7d8e3244687f86">myServer</a>, <a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a>, and <a class="el" href="classArMapChanger.html#a9850b0ed88ce378295870c012f0eb6e4">PROCESS_ROBOT_CHANGES_PACKET_NAME</a>.</p>

</div>
</div>
<a class="anchor" id="a9f5aa19aee09e5745e786c6d76ba5836"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArMapChanger::ArMapChanger </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArClientSwitchManager.html">ArClientSwitchManager</a> *&#160;</td>
          <td class="paramname"><em>clientSwitch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArServerBase.html">ArServerBase</a> *&#160;</td>
          <td class="paramname"><em>server</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *&#160;</td>
          <td class="paramname"><em>map</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a server map changer that can also originate changes (to the EM). </p>
<p>The map changer will automatically apply the received map change details to the given map.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">clientSwitch</td><td>the <a class="el" href="classArClientSwitchManager.html" title="The serverInfoFile takes the form of a config file roughly, there are 3 things you can put in it now...">ArClientSwitchManager</a> * that communicates to the EM </td></tr>
    <tr><td class="paramname">server</td><td>the <a class="el" href="classArServerBase.html" title="Base server for all networking services. ">ArServerBase</a> * that receives the network packets </td></tr>
    <tr><td class="paramname">map</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> * to which to apply the map changes </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="classArServerBase.html#a2df604c980c35140f69d35362a3403f2">ArServerBase::addData()</a>, <a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a>, <a class="el" href="classArClientSwitchManager.html#a3927f338644f06ae92abebef1638a81c">ArClientSwitchManager::getCentralServerHostName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInfoInterface.html#ae76435246b06fe6f967f4c2d098cd959">ArMapInfoInterface::getInfoNames()</a>, <a class="el" href="classArMapChanger.html#a3f57c7f186936273ee6af5fac36c8ba4">myClientSwitch</a>, <a class="el" href="classArMapChanger.html#aa6119abb76531a9b4716bbc4725ae8d7">myHandleChangePacketCB</a>, <a class="el" href="classArMapChanger.html#a509cad7e645463e2a7e6fb332812f770">myHandleRobotReplyPacketCB</a>, <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>, <a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a>, <a class="el" href="classArMapChanger.html#a4fb3dd5fbcc1dbc18d7d8e3244687f86">myServer</a>, <a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a>, <a class="el" href="classArMapChanger.html#a9850b0ed88ce378295870c012f0eb6e4">PROCESS_ROBOT_CHANGES_PACKET_NAME</a>, and <a class="el" href="classArMapChanger.html#af224c506b1308943284d7e7da5efc86e">ROBOT_CHANGES_COMPLETE_PACKET_NAME</a>.</p>

</div>
</div>
<a class="anchor" id="aff206ab7c8c77f5c3da8abaf77f515ed"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArMapChanger::ArMapChanger </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArClientBase.html">ArClientBase</a> *&#160;</td>
          <td class="paramname"><em>client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::list&lt; std::string &gt; &amp;&#160;</td>
          <td class="paramname"><em>infoNames</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a client map changer. </p>
<p>The map changer will send map change details to the server. The application must request this by calling sendMapChanges.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">client</td><td>the <a class="el" href="classArClientBase.html" title="The base client class. ">ArClientBase</a> * which is used to send the map change details </td></tr>
    <tr><td class="paramname">infoNames</td><td>the list of info names included in the map </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="classArClientBase.html#ad3e597486ac95414f45f45a5b4bece8b">ArClientBase::addDisconnectOnErrorCB()</a>, <a class="el" href="classArClientBase.html#af75610dd7e91d98097de1b252d0bacd5">ArClientBase::addHandler()</a>, <a class="el" href="classArClientBase.html#a0d003cf30314ff582e08f4254e8d4656">ArClientBase::addServerShutdownCB()</a>, <a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a>, <a class="el" href="classArClientBase.html#a873a731b968b4e3359c60d592122770b">ArClientBase::dataExists()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a2f7141498552450b70438d25d7904c26">myClientInfoMutex</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#a6d4196edba45d1930c3f50e465d13356">myClientShutdownCB</a>, <a class="el" href="classArMapChanger.html#a12d8861d927f8507e6872b004b40b6a2">myHandleChangesInProgressPacketCB</a>, <a class="el" href="classArMapChanger.html#a4d016fc5664d8994c966d3ed7ee76721">myHandleIdleProcessingPacketCB</a>, <a class="el" href="classArMapChanger.html#a38e1625b116a1baa4ae4ccd240b44de5">myHandleReplyPacketCB</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a>, <a class="el" href="classArClientBase.html#a0a36a40fe2598eb214368ae8c3a26ca1">ArClientBase::request()</a>, <a class="el" href="classArClientBase.html#a2dcd11daf8d2045d460b83733e6932d0">ArClientBase::requestOnce()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a00069ede1325b6f9f500ef2636858262">ArMutex::setLogName()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a1fb05411204d0fbff65b031094fef3ae"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArMapChanger::ArMapChanger </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> *&#160;</td>
          <td class="paramname"><em>map</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a stand-alone map changer that will apply changes to the given map. </p>
<p>This method is primarily used for debugging.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">map</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a> * to which to apply the map changes </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInfoInterface.html#ae76435246b06fe6f967f4c2d098cd959">ArMapInfoInterface::getInfoNames()</a>, <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>, and <a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a>.</p>

</div>
</div>
<a class="anchor" id="af0efc22bd3a1e7a6efc39743eccb6f64"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ArMapChanger::~ArMapChanger </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destructor. </p>

<p>References <a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a6d4196edba45d1930c3f50e465d13356">myClientShutdownCB</a>, <a class="el" href="classArMapChanger.html#a12d8861d927f8507e6872b004b40b6a2">myHandleChangesInProgressPacketCB</a>, <a class="el" href="classArMapChanger.html#a4d016fc5664d8994c966d3ed7ee76721">myHandleIdleProcessingPacketCB</a>, <a class="el" href="classArMapChanger.html#a38e1625b116a1baa4ae4ccd240b44de5">myHandleReplyPacketCB</a>, <a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a>, <a class="el" href="classArClientBase.html#a7cb696df3e36f4d8258ed0091e553349">ArClientBase::remDisconnectOnErrorCB()</a>, <a class="el" href="classArClientBase.html#a904bea3bf052b9a13bba5d81e45f68f9">ArClientBase::remHandler()</a>, and <a class="el" href="classArClientBase.html#a2399734098ee84b0b344644e76fc07d6">ArClientBase::remServerShutdownCB()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ae94a0812800303aa9e0bac2d4c455c43"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addChangeCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a callback to be invoked after the map has been changed on the server. </p>
<p>This method is primarily used on the central server. After the map changes are successfully applied to its map, they are propagated to all of the connected robots. </p>

<p>References <a class="el" href="classArMapChanger.html#ae7a8ab5f4f6b981d862e18cb472b20a3">myChangeCBList</a>, and <a class="el" href="classArMapChanger.html#abe1f97e020306006e66e5ded63ab960f">remChangeCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a6775e154dbd08e9d3ad09b36bfdf9fa2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addFileLineSetPackets </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a>&#160;</td>
          <td class="paramname"><em>dataType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>extra</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineSet.html">ArMapFileLineSet</a> *&#160;</td>
          <td class="paramname"><em>fileLineSet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates network packets for the specified map change data and adds them to the given list. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dataType</td><td>the MapChangeDataType that specifies which map data is to be added </td></tr>
    <tr><td class="paramname">changeType</td><td>the MapLineChangeType that specifies the type of map change (lines added or deleted) </td></tr>
    <tr><td class="paramname">scanType</td><td>the char * identifier of the scan source to add; valid only when dataType is SUMMARY_DATA </td></tr>
    <tr><td class="paramname">extra</td><td>an optional const char * identifier that clarifies which data to add; when dataType is INFO_DATA, this is the info name; otherwise, ignored </td></tr>
    <tr><td class="paramname">fileLineSet</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineSet.html">ArMapFileLineSet</a> * component of the map change details that is to be converted to network packets </td></tr>
    <tr><td class="paramname">packetListOut</td><td>the list of ArNetPackets to which new packets are added </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="classArMapChanger.html#a8f36a634b135aeca676b3ace46e62fd6">addGroupToPacketList()</a>, <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a6ab2c8b1224dc27fc96f22ff8f027e28">ArBasePacket::byte4ToBuf()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77">INFO_DATA</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#aca10655a71490117f5e89378e2a5b533">ArUtil::isStrEmpty()</a>, and <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="af277fd6b736ef840df1e2158ff83c642"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addFileLineToPacketList </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a>&#160;</td>
          <td class="paramname"><em>dataType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html">ArMapFileLine</a> &amp;&#160;</td>
          <td class="paramname"><em>fileLine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates network packets for the specified file line and adds them to the given list. </p>

<p>References <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="el" href="classArMapChanger.html#a217eef4ae35a210e15bafeecc84b1851">addPointsPackets()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a6ab2c8b1224dc27fc96f22ff8f027e28">ArBasePacket::byte4ToBuf()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a285a42c92cc6f279ee5e8dd3ba6eb2b9">ArMapFileLine::getLineNum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a51def2aaa583901ebb347c8e5c8ce03c">ArBasePacket::getMaxLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1367558f1c0ce2830072a649ad935d21">ArBasePacket::strToBuf()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a8f36a634b135aeca676b3ace46e62fd6">addGroupToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="a8f36a634b135aeca676b3ace46e62fd6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addGroupToPacketList </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a>&#160;</td>
          <td class="paramname"><em>dataType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html">ArMapFileLineGroup</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates network packets for the specified file line group and adds them to the given list. </p>

<p>References <a class="el" href="classArMapChanger.html#af277fd6b736ef840df1e2158ff83c642">addFileLineToPacketList()</a>, <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a6ab2c8b1224dc27fc96f22ff8f027e28">ArBasePacket::byte4ToBuf()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a4ee6ac06ee2ca2b1d9a8b8ac4b52f5bc">ArMapFileLineGroup::getChildLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a285a42c92cc6f279ee5e8dd3ba6eb2b9">ArMapFileLine::getLineNum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a51def2aaa583901ebb347c8e5c8ce03c">ArBasePacket::getMaxLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1367558f1c0ce2830072a649ad935d21">ArBasePacket::strToBuf()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a6775e154dbd08e9d3ad09b36bfdf9fa2">addFileLineSetPackets()</a>.</p>

</div>
</div>
<a class="anchor" id="a7a49911efe804ecaa23e35e4cf171d9d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::addHeaderToPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">MapChangeCommand</a>&#160;</td>
          <td class="paramname"><em>command</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a>&#160;</td>
          <td class="paramname"><em>dataType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inserts header information into the given network packet. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">command</td><td>the MapChangeCommand that specifies which command identifier to add to this packet </td></tr>
    <tr><td class="paramname">dataType</td><td>the MapChangeDataType that specifies which map data is to be added </td></tr>
    <tr><td class="paramname">changeType</td><td>the MapLineChangeType that specifies the type of map change (lines added or deleted) </td></tr>
    <tr><td class="paramname">scanType</td><td>the char * identifier of the scan source to add; valid only when dataType is SUMMARY_DATA </td></tr>
    <tr><td class="paramname">packet</td><td>the <a class="el" href="classArNetPacket.html" title="our packet for the network stuff ">ArNetPacket</a> * to be modified; must be non-NULL </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ab1ac850ed5c504b22cc881667f5d84f6">ArMapChangeDetails::getOrigMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a630033dac696c94671b4155a7ba649b5">myChangeDetails</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1367558f1c0ce2830072a649ad935d21">ArBasePacket::strToBuf()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#adab69a6432e77d20a3594708ae234056">ArMapId::toPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#aeec1b2c2dc6902e3c2b820fb2ddbf0e2">ArBasePacket::uByte2ToBuf()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ab909290dd24db16046bdf792a20eb6da">ArBasePacket::uByteToBuf()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a6775e154dbd08e9d3ad09b36bfdf9fa2">addFileLineSetPackets()</a>, <a class="el" href="classArMapChanger.html#af277fd6b736ef840df1e2158ff83c642">addFileLineToPacketList()</a>, <a class="el" href="classArMapChanger.html#a8f36a634b135aeca676b3ace46e62fd6">addGroupToPacketList()</a>, <a class="el" href="classArMapChanger.html#a41316c185f5f35e09d50159885df68b2">addLinesPackets()</a>, <a class="el" href="classArMapChanger.html#a217eef4ae35a210e15bafeecc84b1851">addPointsPackets()</a>, and <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="a41316c185f5f35e09d50159885df68b2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addLinesPackets </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLineSegment.html">ArLineSegment</a> &gt; *&#160;</td>
          <td class="paramname"><em>lineSegmentList</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates network packets for the given map data lines and adds them to the given list. </p>

<p>References <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a6ab2c8b1224dc27fc96f22ff8f027e28">ArBasePacket::byte4ToBuf()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa52a65e1244a57df9dd2626da27c693e6">LINES_DATA</a>, and <a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1a0e319207548f675f31bee1dc7255c5a2">MAX_LINES_IN_PACKET</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a217eef4ae35a210e15bafeecc84b1851">addPointsPackets()</a>, and <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="a217eef4ae35a210e15bafeecc84b1851"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addPointsPackets </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArPose.html">ArPose</a> &gt; *&#160;</td>
          <td class="paramname"><em>pointList</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates network packets for the given map data points and adds them to the given list. </p>

<p>References <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="el" href="classArMapChanger.html#a41316c185f5f35e09d50159885df68b2">addLinesPackets()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a6ab2c8b1224dc27fc96f22ff8f027e28">ArBasePacket::byte4ToBuf()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1afc12e915661b82fdf0641adb10d1d66d">MAX_POINTS_IN_PACKET</a>, and <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa08d04cdc16d4991988ea51ba86de5cdc">POINTS_DATA</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#af277fd6b736ef840df1e2158ff83c642">addFileLineToPacketList()</a>, and <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="a42cfd2bf214b1674ae25be4d0a6ee9ff"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::addPostWriteFileCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a>&#160;</td>
          <td class="paramname"><em>position</em> = <code><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a callback to be invoked after the map file has been written. </p>
<p>This method is primarily used to restore the server's directory write status, if necessary. </p>

<p>References <a class="el" href="classArMapChanger.html#adb19740b81a0c27a0a8c5b8ead3d8f0e">addToCallbackList()</a>, and <a class="el" href="classArMapChanger.html#a61daf7e22d46ab1ef050fb1758eefa32">myPostWriteCBList</a>.</p>

</div>
</div>
<a class="anchor" id="abfb73ff889d58a5fc4675881211c5220"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::addPreWriteFileCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a>&#160;</td>
          <td class="paramname"><em>position</em> = <code><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a callback to be invoked before the map file is written. </p>
<p>This method is primarily used to temporarily make the server's directory writeable, if necessary. </p>

<p>References <a class="el" href="classArMapChanger.html#adb19740b81a0c27a0a8c5b8ead3d8f0e">addToCallbackList()</a>, and <a class="el" href="classArMapChanger.html#a9298c174615a941c245acd39e2c05c66">myPreWriteCBList</a>.</p>

</div>
</div>
<a class="anchor" id="aaa74574962d3b9d881769a717f267bda"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::addRobotChangeReplyCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a callback to be invoked after the remote reply has been received. </p>
<p>This method is primarily used on the robot. After the ARCL originated changes have been applied by the Enterprise Manager, this callback list is invoked for other interested parties. </p>

<p>References <a class="el" href="classArMapChanger.html#a87c88ce3a949cc2b97007b603d8bc6bb">myRobotChangeReplyCBList</a>, and <a class="el" href="classArMapChanger.html#aef0e45ea59fe1fd153109a025dc42a9d">remRobotChangeReplyCB()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#abe1f97e020306006e66e5ded63ab960f">remChangeCB()</a>.</p>

</div>
</div>
<a class="anchor" id="adb19740b81a0c27a0a8c5b8ead3d8f0e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::addToCallbackList </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0">ArListPos::Pos</a>&#160;</td>
          <td class="paramname"><em>position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt; *&#160;</td>
          <td class="paramname"><em>cbList</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds the given functor to the given callback list. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a7573a55fbcdb54b1768e9ce574407d15">ArListPos::FIRST</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArListPos.html#adb42d52c70a646c5698c5513cd25bbd0a3c55111fa6c7f63c41fc0b387f5b57d9">ArListPos::LAST</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a42cfd2bf214b1674ae25be4d0a6ee9ff">addPostWriteFileCB()</a>, and <a class="el" href="classArMapChanger.html#abfb73ff889d58a5fc4675881211c5220">addPreWriteFileCB()</a>.</p>

</div>
</div>
<a class="anchor" id="ad1674eb6377d518e60e239c830d62936"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applyInfoChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given map changes to the info data in the map. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">changeDetails</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> * that describes how the map should be modified; must be non-NULL </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#aab55a9e9cd820fb6a1d9e6515bdecef7">ArArgumentBuilder::addPlain()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#ad0640e440c2258dff602fb7e0e422afa">ArArgumentBuilder::compressQuoted()</a>, <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#a6b5f17df33bafc1882eb3d5f519e1200">ArUtil::deleteSet()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a22243bc461eb8f7256b43d48fbab93e3">ArMapChangeDetails::DELETIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineSet.html#a25035b27bfa197ea998be47f1551aff3">ArMapFileLineSet::find()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a33ddb34eca4d1abfe662f5ee872a3834">ArMapChangeDetails::findChangedInfoNames()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a61d4b5c63eb04c92ee4934eef0fb1ab3">ArMapChangeDetails::getChangedInfoLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a4ee6ac06ee2ca2b1d9a8b8ac4b52f5bc">ArMapFileLineGroup::getChildLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#a3d0f4e9a6510a02877c59492229d9aaa">ArArgumentBuilder::getFullString()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInfoInterface.html#a377012af07697ccb5b2d5cbff842d10c">ArMapInfoInterface::getInfo()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a285a42c92cc6f279ee5e8dd3ba6eb2b9">ArMapFileLine::getLineNum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, <a class="el" href="ArMapChanger_8cpp.html#a8f190bfcdf45dd402c71a98ab76b6fdd">IFDEBUG</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#adaaefb8305d1d5a43ff3401521698ccb">ArMapChangeDetails::isChildArg()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#a2dbe5a174056a599f9a1cce4a43daa89">ArArgumentBuilder::removeArg()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInfoInterface.html#af8e673838d267f7831d56c7cd7822e32">ArMapInfoInterface::setInfo()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a143a8d888984d5691536e809f2c08840"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applyMapChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given map changes received from the client to the associated <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a40d8eea550274935ff957b93f340dc60">ArMapInterface::addPostWriteFileCB()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a7b1e1bc876eba9f442f170449b79f69e">ArMapInterface::addPreWriteFileCB()</a>, <a class="el" href="classArMapChanger.html#ad1674eb6377d518e60e239c830d62936">applyInfoChanges()</a>, <a class="el" href="classArMapChanger.html#a9ac4dc25c85ec5959766451cfd76802e">applyObjectChanges()</a>, <a class="el" href="classArMapChanger.html#a714618eeef1d845f0d2a27ae29a1a9ee">applyScanChanges()</a>, <a class="el" href="classArMapChanger.html#a62bd1ee27634796829a3b287f11ec504">applySupplementChanges()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a11d230f4851af9cd23683ec1b425f7e8">ArMapInterface::calculateChecksum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#abc68f5bb2b270a3621206c0bb60de750">ArMapInterface::clone()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMD5Calculator.html#aeca285eb7c968becf9d4a61f68fd740da1c49adf9388dec84457b4f47ec6a0cbb">ArMD5Calculator::DIGEST_LENGTH</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMD5Calculator.html#aeca285eb7c968becf9d4a61f68fd740dac98025b3fc272549daee5ddae9891b10">ArMD5Calculator::DISPLAY_LENGTH</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a786de6c7f07b642cee64cdc37aff93e9">ArMapId::getChecksum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a113f34f23bb8291f0a110724fdeef9cd">ArMapId::getDisplayChecksum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a410aef2069cbe512f2482349f64240a8">ArMapId::getFileName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a42438b0cdb01d4f1613b05dcaa8bae60">ArMapInterface::getMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a63842901aff1690a2d97135ff7f2f3a6">ArMapId::getTimestamp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ae26d105529b0ac5990d85e8c11bb19f4">ArMapId::isNull()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a2e72e85ff0680d98570b096cf24938ba">ArMapInterface::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#af8581efeef777c46c541aa25de94d2cb">ArMapId::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a00f12f15367b9c97592b0f45fda2fc2f">ArMapInterface::mapChanged()</a>, <a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a>, <a class="el" href="classArMapChanger.html#a61daf7e22d46ab1ef050fb1758eefa32">myPostWriteCBList</a>, <a class="el" href="classArMapChanger.html#a9298c174615a941c245acd39e2c05c66">myPreWriteCBList</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a80f3ea46ca3969d4eaf6253b39c84f5c">ArMapInterface::remPostWriteFileCB()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a44fbadba38009509c473ca622a59b8b1">ArMapInterface::remPreWriteFileCB()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a20061ab5be4b9b469a7221ca12fdd9be">ArMapInterface::set()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa0845abe1f1fe4f32430a468286cb7ae">ArMapChangeDetails::setNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMD5Calculator.html#abf82e1535ba09d30f0696792c6f9e43b">ArMD5Calculator::toDisplay()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a0f53472e8700abcc05a85b9f7a7d6820">ArMapInterface::unlock()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#ade2aaba8c0a991964c2a623987a589fe">ArMapInterface::writeFile()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="a9ac4dc25c85ec5959766451cfd76802e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applyObjectChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given map changes to the object data in the map. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">changeDetails</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> * that describes how the map should be modified; must be non-NULL </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#aab55a9e9cd820fb6a1d9e6515bdecef7">ArArgumentBuilder::addPlain()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#aead99125fbdae726a76e29b0548b22bc">ArMapObject::createMapObject()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#a6b5f17df33bafc1882eb3d5f519e1200">ArUtil::deleteSet()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a22243bc461eb8f7256b43d48fbab93e3">ArMapChangeDetails::DELETIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4eeb1d0195ac83ef34fb2f70426c5811">ArMapChangeDetails::getChangedObjectLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObjectsInterface.html#a66394898f80b1917b5f96aa4b7a8e37c">ArMapObjectsInterface::getMapObjects()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, <a class="el" href="classArMapChanger.html#a83b329b111b330714e1d73142853d46c">isMatchingObjects()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a2ed252d7403cc3ec9956e93b8dcfe67b">ArMapObject::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArArgumentBuilder.html#a2dbe5a174056a599f9a1cce4a43daa89">ArArgumentBuilder::removeArg()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObjectsInterface.html#ac145d6f5324b7e5a251f32907e957cc5">ArMapObjectsInterface::setMapObjects()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a714618eeef1d845f0d2a27ae29a1a9ee"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applyScanChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies all scan data changes that are contained in the given change details. </p>
<p>Scan data include summary data, map data points, and map data lines. If the map contains scan data for multiple sources, then this method applies all of the applicable changes.</p>
<p>An <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map must have been previously associated with the map changer. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#ac2148e6b805f454df92629107524cc6b">ArMapScanInterface::addToFileParser()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a5b8b98e5153e1fb57dfe2fa7dd3c997a">ArMapChangeDetails::getScanTypes()</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#a3a5ad36fe57fee02deacff8b7121a9c7">ArMapScanInterface::remFromFileParser()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a31ada1546aeb41883d8851f28e42f680"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applyScanChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFileParser.html">ArFileParser</a> &amp;&#160;</td>
          <td class="paramname"><em>parser</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies scan data changes for the specified scan type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">changeDetails</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> * that describes how the map should be modified; must be non-NULL </td></tr>
    <tr><td class="paramname">scanType</td><td>the char * identifier of the scan type to be updated </td></tr>
    <tr><td class="paramname">parser</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFileParser.html">ArFileParser</a> used to parse the changeDetails </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a22243bc461eb8f7256b43d48fbab93e3">ArMapChangeDetails::DELETIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a19274f61c900a54d524e3399f9356195">ArMapChangeDetails::getChangedLineSegments()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad5ba917656be215aee067fb0f4fb4759">ArMapChangeDetails::getChangedPoints()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a62d7b7d3b85afe4792449903b4bd37e8">ArMapChangeDetails::getChangedSummaryLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#afb236644c2df2f7f1f65c94226a029da">ArMapScanInterface::getLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#a89bc799ecce6710728ef14863fdc97b3">ArMapScanInterface::getNumLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#a891d5c22c516c783e947063298e34494">ArMapScanInterface::getNumPoints()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#a1dcd08b5cfc13ac5dc7d4b165d25bcaf">ArMapScanInterface::getPoints()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#gabfac503dbf12dac57c8dc133d0b034a1">ArTime::mSecSince()</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFileParser.html#a1a1e7db097550a8a935738cdb13f3dde">ArFileParser::parseLine()</a>.</p>

</div>
</div>
<a class="anchor" id="a62bd1ee27634796829a3b287f11ec504"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::applySupplementChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given map changes to the supplemental data in the map. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">changeDetails</td><td>the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> * that describes how the map should be modified; must be non-NULL </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#ac2148e6b805f454df92629107524cc6b">ArMapScanInterface::addToFileParser()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa4ff621d37c73479592e1a87c87bb115">ArMapChangeDetails::getChangedSupplementLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a79a3d201a8f115d73c81528efe7497e0">ArMapFileLine::getLineText()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aba09f10fe736f9cb2b9c86b9e8193848">myWorkingMap</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFileParser.html#a1a1e7db097550a8a935738cdb13f3dde">ArFileParser::parseLine()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapScanInterface.html#a3a5ad36fe57fee02deacff8b7121a9c7">ArMapScanInterface::remFromFileParser()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a30fa322777e2c916275cf93249196dc8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::convertChangeDetailsToPacketList </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetListOut</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>isRelay</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates a list of network packets for the given map change details. </p>

<p>References <a class="el" href="classArMapChanger.html#a6775e154dbd08e9d3ad09b36bfdf9fa2">addFileLineSetPackets()</a>, <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="el" href="classArMapChanger.html#a41316c185f5f35e09d50159885df68b2">addLinesPackets()</a>, <a class="el" href="classArMapChanger.html#a217eef4ae35a210e15bafeecc84b1851">addPointsPackets()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae89cf994b89fd719467b3532dcecb873a5b99d287bb56d59d29306dfc38ea7888">ArMapChangeDetails::CHANGE_TYPE_COUNT</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a3107cef001e3a43aeb660535782a5498">FINISH_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a61d4b5c63eb04c92ee4934eef0fb1ab3">ArMapChangeDetails::getChangedInfoLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a19274f61c900a54d524e3399f9356195">ArMapChangeDetails::getChangedLineSegments()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4eeb1d0195ac83ef34fb2f70426c5811">ArMapChangeDetails::getChangedObjectLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad5ba917656be215aee067fb0f4fb4759">ArMapChangeDetails::getChangedPoints()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a62d7b7d3b85afe4792449903b4bd37e8">ArMapChangeDetails::getChangedSummaryLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa4ff621d37c73479592e1a87c87bb115">ArMapChangeDetails::getChangedSupplementLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a5b8b98e5153e1fb57dfe2fa7dd3c997a">ArMapChangeDetails::getScanTypes()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ad5a8d121c330e8b86a04cbbd2baaae38">ArMapId::getSourceName()</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77">INFO_DATA</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#aca10655a71490117f5e89378e2a5b533">ArUtil::isStrEmpty()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a630033dac696c94671b4155a7ba649b5">myChangeDetails</a>, <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa456e025f2b60c4dfe936f2ae19a58588">NO_CHANGE</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa56c4d61c5a32300a4a912288b684c920">OBJECTS_DATA</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa0845abe1f1fe4f32430a468286cb7ae">ArMapChangeDetails::setNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a4e59a63ccb1a30fb87972b4d06c98422">ArMapId::setTimestamp()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4960b8a8b46e1fab434a2077f3049d60">START_CHANGES</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaef383b85b35c07dbec6355b066dee955">SUMMARY_DATA</a>, and <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa042468b4c8964c702a38e27e58e74ee9">SUPPLEMENT_DATA</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#ad1674eb6377d518e60e239c830d62936">applyInfoChanges()</a>, <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, and <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a3df6edf63396448d6e269e2a0c2a52b4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::convertPacketListToChangeDetails </td>
          <td>(</td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>packetList</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetailsOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Unpacks the given network packet list and populates the given map change details. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a3d3611f9a8bbac9ecb307c6bd0c534e9">ArMapChangeDetails::ADDITIONS</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77">INFO_DATA</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa52a65e1244a57df9dd2626da27c693e6">LINES_DATA</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa456e025f2b60c4dfe936f2ae19a58588">NO_CHANGE</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa56c4d61c5a32300a4a912288b684c920">OBJECTS_DATA</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa08d04cdc16d4991988ea51ba86de5cdc">POINTS_DATA</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa0845abe1f1fe4f32430a468286cb7ae">ArMapChangeDetails::setNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4e6cd5ffc6b68963c2768fb77166356d">ArMapChangeDetails::setOrigMapId()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4960b8a8b46e1fab434a2077f3049d60">START_CHANGES</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaef383b85b35c07dbec6355b066dee955">SUMMARY_DATA</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa042468b4c8964c702a38e27e58e74ee9">SUPPLEMENT_DATA</a>, <a class="el" href="classArMapChanger.html#a9d9dabaa125125f55f25b20b6e1cad06">unpackFileLineSet()</a>, <a class="el" href="classArMapChanger.html#a020bc0e2af2ce73e10c4fed8901a027a">unpackHeader()</a>, <a class="el" href="classArMapChanger.html#afe3dbf5e11f9a121d8f17e218cc8aac8">unpackLines()</a>, and <a class="el" href="classArMapChanger.html#a6a9891d76099198ac2e49d4867985529">unpackPoints()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a41316c185f5f35e09d50159885df68b2">addLinesPackets()</a>, and <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="a638fba4b6bbe39292c5134f376e912ce"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleChangePacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArServerClient.html">ArServerClient</a> *&#160;</td>
          <td class="paramname"><em>client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Server handler for packets that contain map change details. </p>

<p>References <a class="el" href="structArMapChanger_1_1ClientChangeInfo.html#a33385e43a211f2d5632603e0861d206e">ArMapChanger::ClientChangeInfo::addPacket()</a>, <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>, <a class="el" href="classArServerBase.html#aaf43c74fa075d30ec57eb1ac4221084c">ArServerBase::broadcastPacketTcp()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a2edc48967c8486823d9a29301d981fab">CANCEL_CHANGES</a>, <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafabef9c86892f69ab8092734f5aba909ad">CHANGE_FAILED</a>, <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafa9cea6a58aa34cba65bcdd300aee2f37c">CHANGE_SUCCESS</a>, <a class="el" href="classArMapChanger.html#a409e5a475b6fca4b5a88c0ac8a0719c6">CHANGES_IN_PROGRESS_PACKET_NAME</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>, <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>, <a class="el" href="classArServerClient.html#a259537dd4ed91e645b585530eb959a75">ArServerClient::findCommandFromName()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a3107cef001e3a43aeb660535782a5498">FINISH_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a410aef2069cbe512f2482349f64240a8">ArMapId::getFileName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html#a42438b0cdb01d4f1613b05dcaa8bae60">ArMapInterface::getMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html#a5bacfbd7ba97a063b753bf94080f0610">ArFunctor2&lt; P1, P2 &gt;::invoke()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ae26d105529b0ac5990d85e8c11bb19f4">ArMapId::isNull()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ab88f7fb945dc1b8851d6ab86b7f53a33">ArMapId::isSameFile()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a78f42249db55178e613460114f470bc0">ArMapId::isValidTimestamp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#af8581efeef777c46c541aa25de94d2cb">ArMapId::log()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a54576d8af45ab633e4383b0746c741a7">ArMapChangeDetails::log()</a>, <a class="el" href="classArMapChanger.html#ae7a8ab5f4f6b981d862e18cb472b20a3">myChangeCBList</a>, <a class="el" href="structArMapChanger_1_1ClientChangeInfo.html#afe06e716e74b880957d6254883977801">ArMapChanger::ClientChangeInfo::myClient</a>, <a class="el" href="classArMapChanger.html#ad2eeb3f98563ebf24307d2361b789884">myClientInfo</a>, <a class="el" href="classArMapChanger.html#a2f7141498552450b70438d25d7904c26">myClientInfoMutex</a>, <a class="el" href="structArMapChanger_1_1ClientChangeInfo.html#a56af8410e1a09d5ef844ff892d52c1e4">ArMapChanger::ClientChangeInfo::myLastActivityTime</a>, <a class="el" href="classArMapChanger.html#a829644089e79fe7c34c722506e5d6e2d">myMap</a>, <a class="el" href="structArMapChanger_1_1ClientChangeInfo.html#a5f6e6eb4f38231bc2823d7a445c31720">ArMapChanger::ClientChangeInfo::myPacketList</a>, <a class="el" href="classArMapChanger.html#a4fb3dd5fbcc1dbc18d7d8e3244687f86">myServer</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#aa2fc540cc5050447bd640aa4b2034ba9">resetPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga5385636d566c665eb9d722af6f65aef5">ArTime::secSince()</a>, <a class="el" href="classArServerClient.html#a3f898b500f25869bdc5098c7d9a94f93">ArServerClient::sendPacketTcp()</a>, <a class="el" href="classArNetPacket.html#abdd7e7d8f5de66e2b9131c0d3c548a3e">ArNetPacket::setCommand()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4960b8a8b46e1fab434a2077f3049d60">START_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#ab17364ae21df36b1d11942bc5d75b074">ArUtil::strcasecmp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#adab69a6432e77d20a3594708ae234056">ArMapId::toPacket()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#aeec1b2c2dc6902e3c2b820fb2ddbf0e2">ArBasePacket::uByte2ToBuf()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ab909290dd24db16046bdf792a20eb6da">ArBasePacket::uByteToBuf()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>, and <a class="el" href="classArMapChanger.html#a020bc0e2af2ce73e10c4fed8901a027a">unpackHeader()</a>.</p>

</div>
</div>
<a class="anchor" id="a3df8e38ec607d3ed344965133ff7cd35"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleChangeReplyPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the results of applying the map changes on the server. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ac2d63293b9a983d18430eceb0edbf0b1">ArBasePacket::bufToUByte2()</a>, <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafa9cea6a58aa34cba65bcdd300aee2f37c">CHANGE_SUCCESS</a>, <a class="el" href="ArMapChanger_8cpp.html#a8f190bfcdf45dd402c71a98ab76b6fdd">IFDEBUG</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a36326d95ab1076cf32b50fdcbde37739"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleChangesInProgressPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the map-changes-in-progress broadcast packet. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a32d7bab938c3fcc1929890282eb5bec6">ArBasePacket::bufToUByte()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>.</p>

</div>
</div>
<a class="anchor" id="a87178bad2e79779cd29dc544f03676a0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleClientShutdown </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for when the robot disconnects or is shutdown. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a84b8b1b160752bfed246e08a9b4680ac"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleIdleProcessingPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the server's idle-processing-pending broadcast packet. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a3006b1fbf239cea0013d0a9e0c0c1baf">ArBasePacket::bufToByte()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a946fc5ad4814f295b6e28e720d75ab7d">myIdleProcessingMutex</a>, <a class="el" href="classArMapChanger.html#a5c7e7aad748cf4c06e0bfeb3844739da">myIsIdleProcessingPending</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="abbe010f1f4742ba3e45ac5449163a9e0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::handleRobotChangeReplyPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArServerClient.html">ArServerClient</a> *&#160;</td>
          <td class="paramname"><em>client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a8f1536daa451024715fe82cec495e826">ArBasePacket::bufToStr()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ac2d63293b9a983d18430eceb0edbf0b1">ArBasePacket::bufToUByte2()</a>, <a class="el" href="classArMapChanger.html#a852654bd4cf1c91a28ca21a538c42fafa9cea6a58aa34cba65bcdd300aee2f37c">CHANGE_SUCCESS</a>, <a class="el" href="ArMapChanger_8cpp.html#a8f190bfcdf45dd402c71a98ab76b6fdd">IFDEBUG</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html#a5bacfbd7ba97a063b753bf94080f0610">ArFunctor2&lt; P1, P2 &gt;::invoke()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="el" href="classArMapChanger.html#a87c88ce3a949cc2b97007b603d8bc6bb">myRobotChangeReplyCBList</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArNetPacket.html#acae24ddf871f42502daf8405d56d36c3">ArNetPacket::resetRead()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a3afdd5ed6a87efaa81f2e7992c5fe6d0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::isIdleProcessingPending </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determines whether idle processing is pending on the server. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="el" href="classArMapChanger.html#a946fc5ad4814f295b6e28e720d75ab7d">myIdleProcessingMutex</a>, <a class="el" href="classArMapChanger.html#a5c7e7aad748cf4c06e0bfeb3844739da">myIsIdleProcessingPending</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aaacff19ee2b01c2d32bc60a8e26df6c6">waitForCentralServerReply()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

</div>
</div>
<a class="anchor" id="a83b329b111b330714e1d73142853d46c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::isMatchingObjects </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html">ArMapObject</a> *&#160;</td>
          <td class="paramname"><em>obj1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html">ArMapObject</a> *&#160;</td>
          <td class="paramname"><em>obj2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determines whether the two given map objects are the same object. </p>
<p>If the objects have a name, then the name must be identical. Otherwise, the type and position must be the same. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#aed1d5394a7230bf2ef0853f9524c0f03">ArMapObject::getDescription()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a5117cb8110b7c42583cf488a99cb36f8">ArMapObject::getFromPose()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a813ffccdb0715efe5688c6bbe227761b">ArMapObject::getFromToSegments()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#ac963d727fdff35027f9e2e8109c4fe1b">ArMapObject::getIconName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a97e225506e836b3b76962d33d9a0e6ea">ArMapObject::getName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#ab3a48e0694d6426c8fe1ac3f98a7b324">ArMapObject::getPose()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a63121c59f6e9b36fe72abbe5d6383fb5">ArMapObject::getToPose()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a292d43e1e744d50891a225e67f7aface">ArMapObject::getType()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapObject.html#a673578fc0faa0aaa00964ff404c28716">ArMapObject::hasFromTo()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#aca10655a71490117f5e89378e2a5b533">ArUtil::isStrEmpty()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#ab17364ae21df36b1d11942bc5d75b074">ArUtil::strcasecmp()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a9ac4dc25c85ec5959766451cfd76802e">applyObjectChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="abe1f97e020306006e66e5ded63ab960f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::remChangeCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes a callback from the map change list. </p>

<p>References <a class="el" href="classArMapChanger.html#aaa74574962d3b9d881769a717f267bda">addRobotChangeReplyCB()</a>, and <a class="el" href="classArMapChanger.html#ae7a8ab5f4f6b981d862e18cb472b20a3">myChangeCBList</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#ae94a0812800303aa9e0bac2d4c455c43">addChangeCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a0662075ee107a7e1cc3da65357fc366e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::remFromCallbackList </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> * &gt; *&#160;</td>
          <td class="paramname"><em>cbList</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes the given functor from the given callback list. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a5e328dbf0e447dad115b4acaa9a920cb">remPostWriteFileCB()</a>, and <a class="el" href="classArMapChanger.html#a2003fdf3b981d8005ae409e7f6e9dfec">remPreWriteFileCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a5e328dbf0e447dad115b4acaa9a920cb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::remPostWriteFileCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes a callback from the post-write file list. </p>

<p>References <a class="el" href="classArMapChanger.html#a61daf7e22d46ab1ef050fb1758eefa32">myPostWriteCBList</a>, and <a class="el" href="classArMapChanger.html#a0662075ee107a7e1cc3da65357fc366e">remFromCallbackList()</a>.</p>

</div>
</div>
<a class="anchor" id="a2003fdf3b981d8005ae409e7f6e9dfec"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::remPreWriteFileCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a> *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes a callback from the pre-write file list. </p>

<p>References <a class="el" href="classArMapChanger.html#a9298c174615a941c245acd39e2c05c66">myPreWriteCBList</a>, and <a class="el" href="classArMapChanger.html#a0662075ee107a7e1cc3da65357fc366e">remFromCallbackList()</a>.</p>

</div>
</div>
<a class="anchor" id="aef0e45ea59fe1fd153109a025dc42a9d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::remRobotChangeReplyCB </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt; <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes a callback from the remote reply list. </p>

<p>References <a class="el" href="classArMapChanger.html#a87c88ce3a949cc2b97007b603d8bc6bb">myRobotChangeReplyCBList</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aaa74574962d3b9d881769a717f267bda">addRobotChangeReplyCB()</a>.</p>

</div>
</div>
<a class="anchor" id="aa2fc540cc5050447bd640aa4b2034ba9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArMapChanger::resetPacketList </td>
          <td>(</td>
          <td class="paramtype">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; *&#160;</td>
          <td class="paramname"><em>packetList</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Resets all of the network packets in the given list so that they can be read again. </p>

<p>References <a class="el" href="classArNetPacket.html#acae24ddf871f42502daf8405d56d36c3">ArNetPacket::resetRead()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="aad377655ee135174213579f5b88941b4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::sendMapChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sends the given map changes from the client to the server. </p>

<p>References <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#a6b5f17df33bafc1882eb3d5f519e1200">ArUtil::deleteSet()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ab1ac850ed5c504b22cc881667f5d84f6">ArMapChangeDetails::getOrigMapId()</a>, <a class="el" href="classArClientBase.html#a178422ad8149957fe999e1b510fcb61d">ArClientBase::getRobotName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ad5a8d121c330e8b86a04cbbd2baaae38">ArMapId::getSourceName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#aca10655a71490117f5e89378e2a5b533">ArUtil::isStrEmpty()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa0845abe1f1fe4f32430a468286cb7ae">ArMapChangeDetails::setNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4e6cd5ffc6b68963c2768fb77166356d">ArMapChangeDetails::setOrigMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a494ab7c84dfd7b17dbbe4a8398452201">ArMapId::setSourceName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a4e59a63ccb1a30fb87972b4d06c98422">ArMapId::setTimestamp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#ab17364ae21df36b1d11942bc5d75b074">ArUtil::strcasecmp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a54e7293beac64133068f0b44cadc6b15"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::sendPacketList </td>
          <td>(</td>
          <td class="paramtype">const std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>packetList</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Transmits the given map change packet list from the client to the server. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#ad5f4ec636f5e83c3839e29ba33c72ffc">PROCESS_CHANGES_PACKET_NAME</a>, <a class="el" href="classArClientBase.html#a2dcd11daf8d2045d460b83733e6932d0">ArClientBase::requestOnce()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a12e8eba81780f3726fd2246b876d60e1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::sendRobotMapChanges </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sends the given map changes from the robot to the central server. </p>

<p>References <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#a6b5f17df33bafc1882eb3d5f519e1200">ArUtil::deleteSet()</a>, <a class="el" href="classArClientSwitchManager.html#a2bb172ef1a5ddd3e5966f119d3f5b59f">ArClientSwitchManager::getIdentifier()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad146f150fda308abde18cd01eee28ee1">ArMapChangeDetails::getNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ab1ac850ed5c504b22cc881667f5d84f6">ArMapChangeDetails::getOrigMapId()</a>, <a class="el" href="classArClientSwitchManager.html#a135a3af181f88a9e941400fba6b93219">ArClientSwitchManager::getServerClient()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#ad5a8d121c330e8b86a04cbbd2baaae38">ArMapId::getSourceName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#aca10655a71490117f5e89378e2a5b533">ArUtil::isStrEmpty()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#a3f57c7f186936273ee6af5fac36c8ba4">myClientSwitch</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#a7d9bb030031d7df3f2e72d3106d60653">sendRobotPacketList()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#aa0845abe1f1fe4f32430a468286cb7ae">ArMapChangeDetails::setNewMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4e6cd5ffc6b68963c2768fb77166356d">ArMapChangeDetails::setOrigMapId()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a494ab7c84dfd7b17dbbe4a8398452201">ArMapId::setSourceName()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a4e59a63ccb1a30fb87972b4d06c98422">ArMapId::setTimestamp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArUtil.html#ab17364ae21df36b1d11942bc5d75b074">ArUtil::strcasecmp()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a7d9bb030031d7df3f2e72d3106d60653"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::sendRobotPacketList </td>
          <td>(</td>
          <td class="paramtype">const std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>packetList</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Transmit the given map change packet list from the robot to the central server. </p>

<p>References <a class="el" href="classArServerClient.html#a12cdbaae7a6a207a8d027a1d41c89ff9">ArServerClient::broadcastPacketTcp()</a>, <a class="el" href="classArClientSwitchManager.html#a135a3af181f88a9e941400fba6b93219">ArClientSwitchManager::getServerClient()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#a3f57c7f186936273ee6af5fac36c8ba4">myClientSwitch</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#a9850b0ed88ce378295870c012f0eb6e4">PROCESS_ROBOT_CHANGES_PACKET_NAME</a>, <a class="el" href="classArNetPacket.html#abdd7e7d8f5de66e2b9131c0d3c548a3e">ArNetPacket::setCommand()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="a9d9dabaa125125f55f25b20b6e1cad06"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::unpackFileLineSet </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a>&#160;</td>
          <td class="paramname"><em>dataType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>numGroups</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>numChildren</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Unpacks the specified file line set from the given network packet. </p>
<p>The file line set is added to the given change details. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a80571dd0c49cfb0717b1fc1e81176672">ArBasePacket::bufToByte4()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a8f1536daa451024715fe82cec495e826">ArBasePacket::bufToStr()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a61d4b5c63eb04c92ee4934eef0fb1ab3">ArMapChangeDetails::getChangedInfoLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a4eeb1d0195ac83ef34fb2f70426c5811">ArMapChangeDetails::getChangedObjectLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a62d7b7d3b85afe4792449903b4bd37e8">ArMapChangeDetails::getChangedSummaryLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a4ee6ac06ee2ca2b1d9a8b8ac4b52f5bc">ArMapFileLineGroup::getChildLines()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLine.html#a285a42c92cc6f279ee5e8dd3ba6eb2b9">ArMapFileLine::getLineNum()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapFileLineGroup.html#a6ed2a09a6533700103548db5c71173b6">ArMapFileLineGroup::getParentLine()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ae46601e750b76486525b09f7898dda94">ArBasePacket::getReadLength()</a>, <a class="el" href="ArMapChanger_8cpp.html#a8f190bfcdf45dd402c71a98ab76b6fdd">IFDEBUG</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa893e8a782e6fadd7e4c58699de319d77">INFO_DATA</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a7080a7c3199abf5a82ec932de7e733cb">ArBasePacket::isValid()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aac68b8ebcd9edd81d5f412ae1ff3305d">myInfoNames</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaa56c4d61c5a32300a4a912288b684c920">OBJECTS_DATA</a>, and <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaef383b85b35c07dbec6355b066dee955">SUMMARY_DATA</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>.</p>

</div>
</div>
<a class="anchor" id="a020bc0e2af2ce73e10c4fed8901a027a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::unpackHeader </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376">MapChangeCommand</a> *&#160;</td>
          <td class="paramname"><em>commandOut</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> *&#160;</td>
          <td class="paramname"><em>origMapIdOut</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> *&#160;</td>
          <td class="paramname"><em>newMapIdOut</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996aba">MapChangeDataType</a> *&#160;</td>
          <td class="paramname"><em>dataTypeOut</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a> *&#160;</td>
          <td class="paramname"><em>changeTypeOut</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>scanTypeOut</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Unpacks the header data from the given network packet. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">packet</td><td>the <a class="el" href="classArNetPacket.html" title="our packet for the network stuff ">ArNetPacket</a> * from which to extract the header information; must be non-NULL </td></tr>
    <tr><td class="paramname">commandOut</td><td>the MapChangeCommand * extracted from the packet </td></tr>
    <tr><td class="paramname">origMapIdOut</td><td>the original <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> * extracted from the packet </td></tr>
    <tr><td class="paramname">newMapIdOut</td><td>the optional new <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html">ArMapId</a> * extracted from the packet </td></tr>
    <tr><td class="paramname">dataTypeOut</td><td>the optional MapChangeDataType * extracted from the packet </td></tr>
    <tr><td class="paramname">changeTypeOut</td><td>the optional MapLineChangeType * extracted from the packet </td></tr>
    <tr><td class="paramname">scanTypeOut</td><td>the optional std::string * extracted from the packet </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>bool true if all of the header information was succesfully extracted; false, otherwise </dd></dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a8f1536daa451024715fe82cec495e826">ArBasePacket::bufToStr()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a32d7bab938c3fcc1929890282eb5bec6">ArBasePacket::bufToUByte()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ac2d63293b9a983d18430eceb0edbf0b1">ArBasePacket::bufToUByte2()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376a4508920597914ab8400fbffa627825a9">CONTINUE_CHANGES</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapId.html#a1de5dd4440815386c41973e4f7e3a5f6">ArMapId::fromPacket()</a>, <a class="el" href="classArMapChanger.html#ab1549ef7090ace709ceed5f4ca68e376ad12cedf203986d18aa8a480afad867a0">LAST_CHANGE_COMMAND</a>, <a class="el" href="classArMapChanger.html#ad3195fa44ecad890c3db1c4886996abaaab87abd5e0e5e2c13f85e841f652a438">LAST_CHANGE_DATA_TYPE</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56a77d8c81cd415084ade91207b729ff5f5">ArMapChangeDetails::LAST_CHANGE_TYPE</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>, and <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="afe3dbf5e11f9a121d8f17e218cc8aac8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::unpackLines </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>numLines</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Unpacks the map data lines for the specified scan from the given network packet. </p>
<p>The data lines are added to the given change details. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a80571dd0c49cfb0717b1fc1e81176672">ArBasePacket::bufToByte4()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#a19274f61c900a54d524e3399f9356195">ArMapChangeDetails::getChangedLineSegments()</a>, and <a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1a0e319207548f675f31bee1dc7255c5a2">MAX_LINES_IN_PACKET</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>.</p>

</div>
</div>
<a class="anchor" id="a6a9891d76099198ac2e49d4867985529"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::unpackPoints </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ae40f8bf0789880c41e790d271e723f56">ArMapChangeDetails::MapLineChangeType</a>&#160;</td>
          <td class="paramname"><em>changeType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>scanType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>numPoints</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a> *&#160;</td>
          <td class="paramname"><em>changeDetails</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Unpacks the map data points for the specified scan from the given network packet. </p>
<p>The data points are added to the given change details. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a80571dd0c49cfb0717b1fc1e81176672">ArBasePacket::bufToByte4()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html#ad5ba917656be215aee067fb0f4fb4759">ArMapChangeDetails::getChangedPoints()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#ac56296aec0c3ed853fd3eb59962bfdf1afc12e915661b82fdf0641adb10d1d66d">MAX_POINTS_IN_PACKET</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df6edf63396448d6e269e2a0c2a52b4">convertPacketListToChangeDetails()</a>.</p>

</div>
</div>
<a class="anchor" id="aaacff19ee2b01c2d32bc60a8e26df6c6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::waitForCentralServerReply </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a> &amp;&#160;</td>
          <td class="paramname"><em>started</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>References <a class="el" href="classArMapChanger.html#a3afdd5ed6a87efaa81f2e7992c5fe6d0">isIdleProcessingPending()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga5385636d566c665eb9d722af6f65aef5">ArTime::secSince()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga4dfb878a3f9123b8dd96ae05b2fd94cb">ArUtil::sleep()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

</div>
</div>
<a class="anchor" id="a7e21533dabbf367f94c2ac6c73b7289e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::waitForReply </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a> &amp;&#160;</td>
          <td class="paramname"><em>started</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Waits for a reply from the server. </p>
<p>If a reply is not received within 30 seconds, this method will timeout and return false.</p>
<dl class="section return"><dt>Returns</dt><dd>bool true if the reply was received; false otherwise </dd></dl>

<p>References <a class="el" href="classArMapChanger.html#a3afdd5ed6a87efaa81f2e7992c5fe6d0">isIdleProcessingPending()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArMapChanger.html#aff3ea22ecd353f08d45a7c02f1d8f561">myClient</a>, <a class="el" href="classArMapChanger.html#a0190ce451a050fbda153345808bb4e2a">myClientMutex</a>, <a class="el" href="classArMapChanger.html#a76e5cef58ddf23b17a4a8e9e4b45c837">myInterleaveMutex</a>, <a class="el" href="classArMapChanger.html#aba1d157146488c4cd8b71f19f3252503">myIsWaitingForReturn</a>, <a class="el" href="classArMapChanger.html#aaea33e6e54a2efac854ccd37d637cab2">myReadyForNextPacket</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga5385636d566c665eb9d722af6f65aef5">ArTime::secSince()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga4dfb878a3f9123b8dd96ae05b2fd94cb">ArUtil::sleep()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a409e5a475b6fca4b5a88c0ac8a0719c6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * ArMapChanger::CHANGES_IN_PROGRESS_PACKET_NAME</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= </div><div class="line">                              <span class="stringliteral">&quot;mapChangesInProgress&quot;</span></div></div><!-- fragment -->
<p>Name of a network packet that is broadcast when the map is being changed. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="ae7a8ab5f4f6b981d862e18cb472b20a3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt;<a class="el" href="classArServerClient.html">ArServerClient</a> *, std::list&lt;<a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; *&gt; *&gt; ArMapChanger::myChangeCBList</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of server client callbacks to be invoked after the map has been changed. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#ae94a0812800303aa9e0bac2d4c455c43">addChangeCB()</a>, <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>, and <a class="el" href="classArMapChanger.html#abe1f97e020306006e66e5ded63ab960f">remChangeCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a630033dac696c94671b4155a7ba649b5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapChangeDetails.html">ArMapChangeDetails</a>* ArMapChanger::myChangeDetails</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Change details to apply to the <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a7a49911efe804ecaa23e35e4cf171d9d">addHeaderToPacket()</a>, and <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="aff3ea22ecd353f08d45a7c02f1d8f561"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classArClientBase.html">ArClientBase</a>* ArMapChanger::myClient</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Associated client base; non-NULL only when changer instantiated on the client. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a87178bad2e79779cd29dc544f03676a0">handleClientShutdown()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, <a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList()</a>, <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="ad2eeb3f98563ebf24307d2361b789884"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structArMapChanger_1_1ClientChangeInfo.html">ClientChangeInfo</a>* ArMapChanger::myClientInfo</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Information regarding the server client that is currently sending map changes. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="a2f7141498552450b70438d25d7904c26"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a> ArMapChanger::myClientInfoMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Mutex that protects access to the myClientInfo member. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="a0190ce451a050fbda153345808bb4e2a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a> ArMapChanger::myClientMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Mutex that protects access to the myClient member. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a87178bad2e79779cd29dc544f03676a0">handleClientShutdown()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, <a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList()</a>, <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>, <a class="el" href="classArMapChanger.html#a7d9bb030031d7df3f2e72d3106d60653">sendRobotPacketList()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

</div>
</div>
<a class="anchor" id="a6d4196edba45d1930c3f50e465d13356"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctorC.html">ArFunctorC</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>&gt; ArMapChanger::myClientShutdownCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Handler invoked when the client shuts down. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a3f57c7f186936273ee6af5fac36c8ba4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classArClientSwitchManager.html">ArClientSwitchManager</a>* ArMapChanger::myClientSwitch</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Associated client switch manager; non-NULL when changer instantiated on robot with EM. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a9f5aa19aee09e5745e786c6d76ba5836">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>, and <a class="el" href="classArMapChanger.html#a7d9bb030031d7df3f2e72d3106d60653">sendRobotPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="aa6119abb76531a9b4716bbc4725ae8d7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2C.html">ArFunctor2C</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArMapChanger::myHandleChangePacketCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Server handler for the network packets that describe map changes. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a12d8861d927f8507e6872b004b40b6a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArMapChanger::myHandleChangesInProgressPacketCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the map-changes-in-progress packet. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a4d016fc5664d8994c966d3ed7ee76721"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArMapChanger::myHandleIdleProcessingPacketCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the idle-processing-in-progress packet. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a38e1625b116a1baa4ae4ccd240b44de5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor1C.html">ArFunctor1C</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArMapChanger::myHandleReplyPacketCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Client handler for the reply packet. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aff206ab7c8c77f5c3da8abaf77f515ed">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a509cad7e645463e2a7e6fb332812f770"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2C.html">ArFunctor2C</a>&lt;<a class="el" href="classArMapChanger.html">ArMapChanger</a>, <a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArMapChanger::myHandleRobotReplyPacketCB</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArMapChanger.html#a9f5aa19aee09e5745e786c6d76ba5836">ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a946fc5ad4814f295b6e28e720d75ab7d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a> ArMapChanger::myIdleProcessingMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Mutex that protects access to the myIsIdleProcessingPending member. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a84b8b1b160752bfed246e08a9b4680ac">handleIdleProcessingPacket()</a>, and <a class="el" href="classArMapChanger.html#a3afdd5ed6a87efaa81f2e7992c5fe6d0">isIdleProcessingPending()</a>.</p>

</div>
</div>
<a class="anchor" id="aac68b8ebcd9edd81d5f412ae1ff3305d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;std::string&gt; ArMapChanger::myInfoNames</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Number of info types in the associated <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map. </p>
<p>List of info types in the associated info map </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a6775e154dbd08e9d3ad09b36bfdf9fa2">addFileLineSetPackets()</a>, <a class="el" href="classArMapChanger.html#a1fb05411204d0fbff65b031094fef3ae">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a30fa322777e2c916275cf93249196dc8">convertChangeDetailsToPacketList()</a>, and <a class="el" href="classArMapChanger.html#a9d9dabaa125125f55f25b20b6e1cad06">unpackFileLineSet()</a>.</p>

</div>
</div>
<a class="anchor" id="a76e5cef58ddf23b17a4a8e9e4b45c837"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a> ArMapChanger::myInterleaveMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Mutex that protects access to the interleave data. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df8e38ec607d3ed344965133ff7cd35">handleChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#abbe010f1f4742ba3e45ac5449163a9e0">handleRobotChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>, <a class="el" href="classArMapChanger.html#aaacff19ee2b01c2d32bc60a8e26df6c6">waitForCentralServerReply()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

</div>
</div>
<a class="anchor" id="a5c7e7aad748cf4c06e0bfeb3844739da"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::myIsIdleProcessingPending</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Whether the server has data to process once it becomes idle. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a84b8b1b160752bfed246e08a9b4680ac">handleIdleProcessingPacket()</a>, and <a class="el" href="classArMapChanger.html#a3afdd5ed6a87efaa81f2e7992c5fe6d0">isIdleProcessingPending()</a>.</p>

</div>
</div>
<a class="anchor" id="a25e9f849bb6647cc287e2081e4f886a3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::myIsServerClientInit</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Whether the client switch manager's serverClient has been initialized with a handler (for EM) </p>

</div>
</div>
<a class="anchor" id="aba1d157146488c4cd8b71f19f3252503"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::myIsWaitingForReturn</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Whether the client is waiting for a reply from the server. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df8e38ec607d3ed344965133ff7cd35">handleChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#abbe010f1f4742ba3e45ac5449163a9e0">handleRobotChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>, <a class="el" href="classArMapChanger.html#aaacff19ee2b01c2d32bc60a8e26df6c6">waitForCentralServerReply()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

</div>
</div>
<a class="anchor" id="a829644089e79fe7c34c722506e5d6e2d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a>* ArMapChanger::myMap</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map currently in use. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>, <a class="el" href="classArMapChanger.html#a1fb05411204d0fbff65b031094fef3ae">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="a61daf7e22d46ab1ef050fb1758eefa32"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a>*&gt; ArMapChanger::myPostWriteCBList</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of callbacks to be invoked after the changed map file is written. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a42cfd2bf214b1674ae25be4d0a6ee9ff">addPostWriteFileCB()</a>, <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>, and <a class="el" href="classArMapChanger.html#a5e328dbf0e447dad115b4acaa9a920cb">remPostWriteFileCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a9298c174615a941c245acd39e2c05c66"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor.html">ArFunctor</a>*&gt; ArMapChanger::myPreWriteCBList</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of callbacks to be invoked before the changed map file is written. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#abfb73ff889d58a5fc4675881211c5220">addPreWriteFileCB()</a>, <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>, and <a class="el" href="classArMapChanger.html#a2003fdf3b981d8005ae409e7f6e9dfec">remPreWriteFileCB()</a>.</p>

</div>
</div>
<a class="anchor" id="aaea33e6e54a2efac854ccd37d637cab2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArMapChanger::myReadyForNextPacket</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Whether the client is ready to send another packet. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3df8e38ec607d3ed344965133ff7cd35">handleChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#abbe010f1f4742ba3e45ac5449163a9e0">handleRobotChangeReplyPacket()</a>, <a class="el" href="classArMapChanger.html#aad377655ee135174213579f5b88941b4">sendMapChanges()</a>, <a class="el" href="classArMapChanger.html#a12e8eba81780f3726fd2246b876d60e1">sendRobotMapChanges()</a>, <a class="el" href="classArMapChanger.html#aaacff19ee2b01c2d32bc60a8e26df6c6">waitForCentralServerReply()</a>, and <a class="el" href="classArMapChanger.html#a7e21533dabbf367f94c2ac6c73b7289e">waitForReply()</a>.</p>

</div>
</div>
<a class="anchor" id="a87c88ce3a949cc2b97007b603d8bc6bb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt; <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArFunctor2.html">ArFunctor2</a>&lt;<a class="el" href="classArServerClient.html">ArServerClient</a> *, <a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; *&gt; ArMapChanger::myRobotChangeReplyCBList</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of server client callbacks to be invoked after the map has been changed. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#aaa74574962d3b9d881769a717f267bda">addRobotChangeReplyCB()</a>, <a class="el" href="classArMapChanger.html#abbe010f1f4742ba3e45ac5449163a9e0">handleRobotChangeReplyPacket()</a>, and <a class="el" href="classArMapChanger.html#aef0e45ea59fe1fd153109a025dc42a9d">remRobotChangeReplyCB()</a>.</p>

</div>
</div>
<a class="anchor" id="a4fb3dd5fbcc1dbc18d7d8e3244687f86"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classArServerBase.html">ArServerBase</a>* ArMapChanger::myServer</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Associated server base; non-NULL only when changer instantiated on the server. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#a638fba4b6bbe39292c5134f376e912ce">handleChangePacket()</a>.</p>

</div>
</div>
<a class="anchor" id="aba09f10fe736f9cb2b9c86b9e8193848"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMapInterface.html">ArMapInterface</a>* ArMapChanger::myWorkingMap</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy of the current <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classAria.html">Aria</a> map, used to make sure the changes can be successfully made. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#ad1674eb6377d518e60e239c830d62936">applyInfoChanges()</a>, <a class="el" href="classArMapChanger.html#a143a8d888984d5691536e809f2c08840">applyMapChanges()</a>, <a class="el" href="classArMapChanger.html#a9ac4dc25c85ec5959766451cfd76802e">applyObjectChanges()</a>, <a class="el" href="classArMapChanger.html#a714618eeef1d845f0d2a27ae29a1a9ee">applyScanChanges()</a>, and <a class="el" href="classArMapChanger.html#a62bd1ee27634796829a3b287f11ec504">applySupplementChanges()</a>.</p>

</div>
</div>
<a class="anchor" id="ad5f4ec636f5e83c3839e29ba33c72ffc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * ArMapChanger::PROCESS_CHANGES_PACKET_NAME</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= </div><div class="line">                              <span class="stringliteral">&quot;processMapChanges&quot;</span></div></div><!-- fragment -->
<p>Name of the network packet that contains the incremental map changes. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger()</a>, <a class="el" href="classArMapChanger.html#a54e7293beac64133068f0b44cadc6b15">sendPacketList()</a>, and <a class="el" href="classArMapChanger.html#af0efc22bd3a1e7a6efc39743eccb6f64">~ArMapChanger()</a>.</p>

</div>
</div>
<a class="anchor" id="a9850b0ed88ce378295870c012f0eb6e4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * ArMapChanger::PROCESS_ROBOT_CHANGES_PACKET_NAME</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= </div><div class="line">                              <span class="stringliteral">&quot;processRobotMapObjectChange&quot;</span></div></div><!-- fragment -->
<p>Name of the network packet that contains incremental map changes originated by the robot. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a3c4275b2fe1eb11f0937a805b21e8eb1">ArMapChanger()</a>, and <a class="el" href="classArMapChanger.html#a7d9bb030031d7df3f2e72d3106d60653">sendRobotPacketList()</a>.</p>

</div>
</div>
<a class="anchor" id="af224c506b1308943284d7e7da5efc86e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * ArMapChanger::ROBOT_CHANGES_COMPLETE_PACKET_NAME</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">                              <span class="stringliteral">&quot;robotMapObjectChangeComplete&quot;</span></div></div><!-- fragment -->
<p>Name of the network packet that is broadcast when map changes originated by the robot are complete. </p>

<p>Referenced by <a class="el" href="classArMapChanger.html#a9f5aa19aee09e5745e786c6d76ba5836">ArMapChanger()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="ArMapChanger_8h.html">ArMapChanger.h</a></li>
<li><a class="el" href="ArMapChanger_8cpp.html">ArMapChanger.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classArMapChanger.html">ArMapChanger</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
